100% found this document useful (1 vote)
558 views118 pages

Workflow System for Businesses

Workflow Management System is a depiction of a sequence of operations, dedicated as work of a group of persons, work of an organization of staff, of machines. Workflow may be seen as any abstraction or real work, segregated in work share, work split or whatever types of ordering.

Uploaded by

DilerRustam
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
558 views118 pages

Workflow System for Businesses

Workflow Management System is a depiction of a sequence of operations, dedicated as work of a group of persons, work of an organization of staff, of machines. Workflow may be seen as any abstraction or real work, segregated in work share, work split or whatever types of ordering.

Uploaded by

DilerRustam
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 118

Work Flow Management System

Work Flow Management System

Work Flow Management System

ABSTRACT Objective:
A Work Flow Management System is a depiction of a sequence of operations, declared as work of a person, work of a simple or complex mechanism, work of a group of persons, work of an organization of staff, or machines. Workflow may be seen as any abstraction of real work, segregated in work share, work split or whatever types of ordering. or control purposes, workflow may be a view on real work under a chosen aspect, thus serving as a virtual representation of actual work. A workflow system for distributing work items to employees so that the employees may perform an activity within a defined workflow process. A server interprets the workflow process and facilitates the scheduling and routing of work items in the system to an employee. !ach work item has a set of work item contents data. "orphing logic determines which data is needed by an employee to which a work item has been scheduled and morphs a work item so that the actor receives only the data from the work item contents that the employee needs. #articular implementations are described for clients and agents employees

Project Overview:
Work flow management system concepts are closely related to other concepts used to describe organizational structure, such as functions, teams, pro$ects, policies and hierarchies. Workflows may be viewed as one primitive building block of organizations. %he relationships among these concepts are described later in this entry. Work flow management system deals with everything about the employee, his role, his work, leave details, clients, pro$ect status, pro$ect history, assign person etc.

&

Work Flow Management System

Mo !les:
%his pro$ect involves mainly three modules. Administrator !mployee "anager

Mo !les "escri#tion:
A ministrator Mo !le:
%his module has to maintain the 'ser, registering the Administrators, changing the passwords. "aintains the (nformation about Administrator and maintains the records of all the employees

$m#loyee Mo !le:
%his opens an A)c for the employee, allows user to change the password, allows user to view work assign to him, check the time sheet and also he can apply for leave

Manager Mo !le:
%his opens an A)c for the manager, allows user to change the password, allows user to view work assign to him, check the leaves of employees, pro$ect details, pro$ect history and information about the clients

Work Flow Management System

%&"$' S( &o )( *( Contents %ntro !ction Analysis


2.1 System Analysis 2.2 System Specification

+(

"esign A##roac,
3.1 Introduction to Design 3.2 UML Diagrams 3.3 Dataflow Diagrams 3.4 !" Diagrams

-( .(

Project Mo !les %m#lementation


#.1 $oncepts and %ec&nologies #.2 %esting #.2.1%est $ases

/( 0( 1( 2(

O!t#!t Screens Concl!sion F!t!re $n,ancements Bibliogra#,y

Work Flow Management System

%ntro !c tion

Work Flow Management System

%&TRO"3CT%O&
A Work Flow Management System is a depiction of a sequence of operations, declared as work of a person, work of a simple or complex mechanism, work of a group of persons, work of an organization of staff, or machines. Workflow may be seen as any abstraction of real work, segregated in work share, work split or whatever types of ordering. or control purposes, workflow may be a view on real work under a chosen aspect, thus serving as a virtual representation of actual work. A workflow system for distributing work items to employees so that the employees may perform an activity within a defined workflow process. A server interprets the workflow process and facilitates the scheduling and routing of work items in the system to an employee. !ach work item has a set of work item contents data. "orphing logic determines which data is needed by an employee to which a work item has been scheduled and morphs a work item so that the actor receives only the data from the work item contents that the employee needs. #articular implementations are described for clients and agents employees Work flow management system concepts are closely related to other concepts used to describe organizational structure, such as functions, teams, pro$ects, policies and hierarchies. Workflows may be viewed as one primitive building block of organizations. %he relationships among these concepts are described later in this entry. Work flow management system deals with everything about the employee, his role, his work, leave details, clients, pro$ect status, pro$ect history, assign person etc.

Work Flow Management System

Analysis

Work Flow Management System

A&A45S%S System Analysis: $6isting System:


A Work Flow Management System is a depiction of a sequence of operations, declared as work of a person, work of a simple or complex mechanism, work of a group of persons, work of an organization of staff, or machines. Workflow may be seen as any abstraction of real work, segregated in work share, work split or whatever types of ordering. or control purposes, workflow may be a view on real work under a chosen aspect, thus serving as a virtual representation of actual work.

"isa vantages:
(t will not get freely.

Pro#ose

System

Work flow management system concepts are closely related to other concepts used to describe organizational structure, such as functions, teams, pro$ects, policies and hierarchies. Workflows may be viewed as one primitive building block of organizations. %he relationships among these concepts are described later in this entry. Work flow management system deals with everything about the employee, his role, his work, leave details, clients, pro$ect status, pro$ect history, assign person etc.

Objective o7 t,e System:


A Work Flow Management System is a depiction of a sequence of operations, declared as work of a person, work of a simple or complex mechanism, work of a group of persons, work of an organization of staff, or machines. Workflow may be seen as any abstraction of real work, segregated in work share, work split or whatever

Work Flow Management System


types of ordering. or control purposes, workflow may be a view on real work under a chosen aspect, thus serving as a virtual representation of actual work.

Workflow system for distributing work items to employees so that the employees may perform an activity within a defined workflow process. A server interprets the workflow process and facilitates the scheduling and routing of work items in the system to an employee. !ach work item has a set of work item contents data. "orphing logic determines which data is needed by an employee to which a work item has been scheduled and morphs a work item so that the actor receives only the data from the work item contents that the employee needs. #articular implementations are described for clients and agents employees

System S#eci7ications:
8ar ware Re9!irements
#entium0(1 2#rocessor3. &,- "4 or ,1& "4 5am ,1& 64 7ache "emory 8ard disk 19 :4 "icrosoft 7ompatible 191 or more 6ey 4oard

So7tware Re9!irements
Web Technologies : ASP.NET 2.0 ang!age $atabase Web Ser)er : "# : S% SE&'E& 200( : **S

+,erating System : W*N$+WS -P

Work Flow Management System

Design

19

Work Flow Management System

"$S%:& %ntro !ction:


<esign is the first step in the development phase for any techniques and principles for the purpose of defining a device, a process or system in sufficient detail to permit its physical realization. =nce the software requirements have been analyzed and specified the software design involves three technical activities 0 design, coding, implementation and testing that are required to build and verify the software. %he design activities are of main importance in this phase, because in this activity, decisions ultimately affecting the success of the software implementation and its ease of maintenance are made. %hese decisions have the final bearing upon reliability and maintainability of the system. <esign is the only way to accurately translate the customer>s requirements into finished software or a system. <esign is the place where quality is fostered in development. ?oftware design is a process through which requirements are translated into a representation of software. ?oftware design is conducted in two steps. #reliminary design is concerned with the transformation of requirements into data.

11

Work Flow Management System

3M4 "iagrams: Actor:


A coherent set of roles that users of use cases play when interacting with the use @cases.

3se case:
A description of sequence of actions, including variants, that a system performs that yields an observable result of value of an actor.

'"A stands for 'nified "odeling Aanguage. '"A is a language for specifying, visualizing and documenting the system. %his is the step while developing any product after analysis. %he goal from this is to produce a model of the entities involved in the pro$ect which later need to be built. %he representation of the entities that are to be used in the product being developed need to be designed. %here are various kinds of methods in software designB %hey are as followsB

1&

Work Flow Management System


'se case <iagram ?equence <iagram 7ollaboration <iagram Activity <iagram ?tate chat <iagram

3se case "iagrams:


'se case diagrams model behavior within a system and helps the developers understand of what the user require. %he stick man represents what>s called an actor. 'se case diagram can be useful for getting an overall view of the system and clarifying that can do and more importantly what they can>t do. 'se case diagram consists of use cases and actors and shows the interaction between the use case and actors. %he purpose is to show the interactions between the use case and actor. %o represent the system requirements from user>s perspective. An actor could be the end0user of the system or an external system.

1*

Work Flow Management System

3se case "iagram


A 'se case is a description of set of sequence of actions. :raphically it is rendered as an ellipse with solid line including only its name. 'se case diagram is a behavioral diagram that shows a set of use cases and actors and their relationship. (t is an association between the use cases and actors. An actor represents a real0world ob$ect. #rimary Actor C ?ender, ?econdary Actor 5eceiver.

1+

Work Flow Management System

5egistration

Admin

%ime ?heet

Aeave <etails "anager

#ro$ect <etails

Se9!ence "iagram
?equence diagram and collaboration diagram are called (D%!5A7%(=D

<(A:5A"?. An interaction diagram shows an interaction, consisting of set of ob$ects and their relationship including the messages that may be dispatched among them. A sequence diagram is an introduction that empathizes the time ordering of messages. :raphically a sequence diagram is a table that shows ob$ects arranged along the E0axis and messages ordered in increasing time along the F0axis.

1,

Work Flow Management System

Admin

!mployee "anager

5egister

!mployee <etails

%ime ?heet #ro$ect <etails

Aogin

"aintance

Aogin

"aintance

Aogin

"aintance

Acti'ity Diagram

1-

Work Flow Management System

5egister

Aogin

Admin

"anager

!mployee

!mployee <etails

%ime ?heet
#ro$ect <etails

Aogout

"ATA F4OW "%A:RAMS:

1.

Work Flow Management System


%he < < takes an input0process0output view of a system i.e. data ob$ects flow into the software, are transformed by processing elements, and resultant data ob$ects flow out of the software. <ata ob$ects represented by labeled arrows and transformation are represented by circles also called as bubbles. < < is presented in a hierarchical fashion i.e. the first data flow model represents the system as a whole. ?ubsequent < < refine the context diagram 2level 9 < <3, providing increasing details with each subsequent level. %he < < enables the software engineer to develop models of the information domain G functional domain at the same time. As the < < is refined into greater levels of details, the analyst performs an implicit functional decomposition of the system. At the same time, the < < refinement results in a corresponding refinement of the data as it moves through the processes that embody the applications. A context0level < < for the system the primary external entities produce information for use by the system and consume information generated by the system. %he labeled arrow represents data ob$ects or ob$ect hierarchy.

R34$S FOR "F":

1/

Work Flow Management System


ix the scope of the system by means of context diagrams. =rganize the < < so that the main sequence of the actions 5eads left to right and top to bottom. (dentify all inputs and outputs. (dentify and label each process internal to the system with 5ounded circles. A process is required for all the data transformation and %ransfers. %herefore, never connect a data store to a data ?ource or the destinations or another data store with $ust a <ata flow arrow. <o not indicate hardware and ignore control information. "ake sure the names of the processes accurately convey everything the process is done. %here must not be unnamed process. (ndicate external sources and destinations of the data, with ?quares. Dumber each occurrence of repeated external entities. (dentify all data flows for each process step, except simple 5ecord retrievals. Aabel data flow on each arrow. 'se details flow on each arrow. 'se the details flow arrow to indicate data movements.

1;

Work Flow Management System

$;R "iagrams:
%he !ntity05elationship 2!53 model was originally proposed by #eter in 1;.H7hen.-I as a way to unify the network and relational database views. ?imply stated the !5 model is a conceptual data model that views the real world as entities and relationships. A basic component of the model is the !ntity05elationship diagram which is used to visually represent data ob$ects. ?ince 7hen wrote his paper the model has been extended and today it is commonly used for database design or the database designer, the utility of the !5 model isB (t maps well to the relational model. %he constructs used in the !5 model can easily be transformed into relational tables. (t is simple and easy to understand with a minimum of training. %herefore, the model can be used by the database designer to communicate the design to the end user. (n addition, the model can be used as a design plan by the database developer to implement a data model in specific database management software.

Connectivity an

Car inality

&9

Work Flow Management System

%he basic types of connectivity for relations areB one0to0one, one0to0many, and many0 to0many. A one-to-one 21B13 relationship is when at most one instance of a entity A is associated with one instance of entity 4. or example, Jemployees in the company are each assigned their own office. or each employee there exists a unique office and for each office there exists a unique employee. A one-to-many 21BD3 relationships is when for one instance of entity A, there are zero, one, or many instances of entity 4, but for one instance of entity 4, there is only one instance of entity A. An example of a 1BD relationships is a department has many employees !ach employee is assigned to one department A many-to-many 2"BD3 relationship, sometimes called non0specific, is when for one instance of entity A, there are zero, one, or many instances of entity 4 and for one instance of entity 4 there are zero, one, or many instances of entity A. %he connectivity of a relationship describes the mapping of associated

$R &otation

&1

Work Flow Management System


%here is no standard for representing data ob$ects in !5 diagrams. !ach modeling methodology uses its own notation. %he original notation used by 7hen is widely used in academics texts and $ournals but rarely seen in either 7A?! tools or publications by non0academics. %oday, there are a number of notations usedK among the more common are 4achman, crowLs foot, and (<! (E. All notational styles represent entities as rectangular boxes and relationships as lines connecting boxes. !ach style uses a special set of symbols to represent the cardinality of a connection. %he notation used in this document is from "artin. %he symbols used for the basic !5 constructs areB
Entities are represented by labeled rectangles. %he label is the name of the entity. !ntity names should be singular nouns. &elationshi,s are represented by a solid line connecting two entities. %he name of the relationship is written above the line. 5elationship names should be verbs Attrib!tes, when included, are listed inside the entity rectangle. Attributes which are identifiers are underlined. Attribute names should be singular nouns. "ar.inality of many is represented by a line ending in a crowLs foot. (f the crowLs foot is omitted, the cardinality is one. E/istence is represented by placing a circle or a perpendicular bar on the line. "andatory existence is shown by the bar 2looks like a 13 next to the entity for an instance is required. =ptional existence is shown by placing a circle next to the entity that is optional

&&

Work Flow Management System

Mo !les

PRO<$CT MO"34$S

&*

Work Flow Management System

%his pro$ect involves mainly three modules. Administrator !mployee "anager

MO"34$ "$SCR%PT%O&
&ame o7 t,e mo !le = ): A.ministrator "escri#tion:
Administrator should be able to block fraudulent users from using the system. Admin should be able to add more categories and merge categories. %his module has to maintain the 'ser, registering the Administrators, changing the passwords. "aintains the (nformation about Administrator and maintains the records of all the employees

S!b mo !les: "egistration (age Login page )orgot password $&ange password mployee Details

&+

Work Flow Management System

Registration Page:
(n this sub module we add the details of the user like user name, contact no, email id, password and report by taking the primary constraint user id. And it also adds these details in database.

4ogin Page:
(n this sub module the user gives his login and password to enter. (f he is valid he enters into resume wizard. (f he is not valid he it wants valid.

Forgot Passwor :
(f the user forgot his password, he enter into forget password page there by giving details he get his password.

C,ange Passwor :
(f the user wants to change his password he can change his password by giving some details

Employee Details:
"aintains all the details of the employees like in which block he was working, his pro$ect manager etc.

&ame o7 t,e mo !le ;*: Employee "escri#tion:


%his opens an A)c for the employee, allows user to change the password, allows user to view work assign to him, check the time sheet and also he can apply for leave

&,

Work Flow Management System

S!b mo !les: %ime S&eet


Lea'e Apply )orm

Time S,eet:
8e maintains %ime sheet like at what time in, time out and how many hours he work and what the work assign to him

4eave A##ly Form:


8e maintains Aeave sheet like how many days he wants leave and what type of leave it is whether it sectioned or not.

&ame o7 t,e mo !le ;+: Manager "escri#tion:


%his opens an A)c for the manager, allows user to change the password, allows user to view work assign to him, check the leaves of employees, pro$ect details, pro$ect history and information about the clients

S!b mo !les:
(ro*ect Details Lea'e Apply )orm $lient Details

4eave A##ly Form:


8e maintains Aeave sheet like how many days he wants leave and what type of leave it is whether it sectioned or not.

&-

Work Flow Management System

Project "etails:
8e maintains #ro$ect <etails like how many #ro$ects are running, how many number working on that.

Client "etails:
8e maintains client details like whose are the clients to their pro$ects.

&.

Work Flow Management System

%m#lement ation

&/

Work Flow Management System

Conce#ts an Tec,ni9!es

&;

Work Flow Management System

Overview o7 Tec,nologies 3se +() Front $n Tec,nology

Microso7t (&$T Framework


%he .D!% ramework is a new computing platform that simplifies application development in the highly distributed environment of the (nternet. %he .D!% ramework is designed to fulfill the following ob$ectivesB %o provide a consistent ob$ect0oriented programming environment whether ob$ect code is stored and executed locally, executed locally but (nternet0distributed, or executed remotely. %o provide a code0execution environment that minimizes software deployment and versioning conflicts. %o provide a code0execution environment that guarantees safe execution of code, including code created by an unknown or semi0trusted third party. %o provide a code0execution environment that eliminates the performance problems of scripted or interpreted environments. %o make the developer experience consistent across widely varying types of applications, such as Windows0based applications and Web0based applications. %o build all communication on industry standards to ensure that code based on the .D!% ramework can integrate with any other code. %he .D!% ramework has two main componentsB the common language runtime and the .D!% ramework class library. %he common language runtime is the foundation of the .D!% ramework. Fou can think of the runtime as an agent that manages code at execution time, providing core services such as memory management, thread management, and remoting, while also enforcing strict type safety and other forms of code accuracy that ensure security and robustness. (n fact, the concept of code management is a fundamental principle of the runtime. 7ode that targets the runtime is known as managed code, while code that does not target the runtime is known as unmanaged code.

*9

Work Flow Management System

%he class library, the other main component of the .D!%

ramework, is a

comprehensive, ob$ect0oriented collection of reusable types that you can use to develop applications ranging from traditional command0line or graphical user interface 2:'(3 applications to applications based on the latest innovations provided by A?#.D!%, such as Web orms and E"A Web services. %he .D!% ramework can be hosted by unmanaged components that load the common language runtime into their processes and initiate the execution of managed code, thereby creating a software environment that can exploit both managed and unmanaged features. %he .D!% ramework not only provides several runtime hosts, but also supports the development of third0party runtime hosts. or example, A?#.D!% hosts the runtime to provide a scalable, server0side environment for managed code. A?#.D!% works directly with the runtime to enable Web orms applications and E"A Web services, both of which are discussed later in this topic. (nternet !xplorer is an example of an unmanaged application that hosts the runtime 2in the form of a "("! type extension3. 'sing (nternet !xplorer to host the runtime enables you to embed managed components or Windows orms controls in 8%"A documents. 8osting the runtime in this way makes managed mobile code 2similar to "icrosoftM ActiveEM controls3 possible, but with significant improvements that only managed code can offer, such as semi0trusted execution and secure isolated file storage. %he following illustration shows the relationship of the common language runtime and the class library to your applications and to the overall system. %he illustration also shows how managed code operates within a larger architecture.

*1

Work Flow Management System

Feat!res o7 t,e Common 4ang!age R!ntime


%he common language runtime manages memory, thread execution, code execution, code safety verification, compilation, and other system services. %hese features are intrinsic to the managed code that runs on the common language runtime. With regards to security, managed components are awarded varying degrees of trust, depending on a number of factors that include their origin 2such as the (nternet, enterprise network, or local computer3. %his means that a managed component might or might not be able to perform file0access operations, registry0access operations, or other sensitive functions, even if it is being used in the same active application. %he runtime enforces code access security. or example, users can trust that an executable embedded in a Web page can play an animation on screen or sing a song, but cannot access their personal data, file system, or network. %he security features of the runtime thus enable legitimate (nternet0deployed software to be exceptionally featuring rich. %he runtime also enforces code robustness by implementing a strict type0 and code0 verification infrastructure called the common type system 27%?3. %he 7%? ensures that all managed code is self0describing. %he various "icrosoft and third0party language compilers generate managed code that conforms to the 7%?. %his means that managed code can consume other managed types and instances, while strictly enforcing type fidelity and type safety. (n addition, the managed environment of the runtime eliminates many common software issues. or example, the runtime automatically handles ob$ect layout and manages references to ob$ects, releasing them when they are no longer being used. %his automatic memory management resolves the two most common application errors, memory leaks and invalid memory references.

*&

Work Flow Management System

%he runtime also accelerates developer productivity. or example, programmers can write applications in their development language of choice, yet take full advantage of the runtime, the class library, and components written in other languages by other developers. Any compiler vendor who chooses to target the runtime can do so. Aanguage compilers that target the .D!% ramework make the features of the .D!% ramework available to existing code written in that language, greatly easing the migration process for existing applications. While the runtime is designed for the software of the future, it also supports software of today and yesterday. (nteroperability between managed and unmanaged code enables developers to continue to use necessary 7=" components and <AAs. %he runtime is designed to enhance performance. Although the common language runtime provides many standard runtime services, managed code is never interpreted. A feature called $ust0in0time 2N(%3 compiling enables all managed code to run in the native machine language of the system on which it is executing. "eanwhile, the memory manager removes the possibilities of fragmented memory and increases memory locality0of0reference to further increase performance. inally, the runtime can be hosted by high0performance, server0side applications, such as "icrosoftM ?OA ?erverP and (nternet (nformation ?ervices 2((?3. %his infrastructure enables you to use managed code to write your business logic, while still en$oying the superior performance of the industryLs best enterprise servers that support runtime hosting.

**

Work Flow Management System

(&$T Framework Class 4ibrary


%he .D!% ramework class library is a collection of reusable types that tightly

integrate with the common language runtime. %he class library is ob$ect oriented, providing types from which your own managed code can derive functionality. %his not only makes the .D!% ramework types easy to use, but also reduces the time associated with learning new features of the .D!% ramework. (n addition, third0party components can integrate seamlessly with classes in the .D!% ramework. or example, the .D!% ramework collection classes implement a set of interfaces that you can use to develop your own collection classes. Four collection classes will blend seamlessly with the classes in the .D!% ramework. As you would expect from an ob$ect0oriented class library, the .D!% ramework types enable you to accomplish a range of common programming tasks, including tasks such as string management, data collection, database connectivity, and file access. (n addition to these common tasks, the class library includes types that support a variety of specialized development scenarios. or example, you can use the .D!% ramework to develop the following types of applications and servicesB

7onsole applications. ?cripted or hosted applications. Windows :'( applications 2Windows orms3. A?#.D!% applications. E"A Web services. Windows services.

or example, the Windows orms classes are a comprehensive set of reusable types that vastly simplify Windows :'( development. (f you write an A?#.D!% Web orm application, you can use the Web orms classes.

*+

Work Flow Management System

Client A##lication "evelo#ment


7lient applications are the closest to a traditional style of application in Windows0 based programming. %hese are the types of applications that display windows or forms on the desktop, enabling a user to perform a task. 7lient applications include applications such as Word processors and spreadsheets, as well as custom business applications such as data0entry tools, reporting tools, and soon. 7lient applications usually employ windows, menus, buttons, and other :'( elements, and they likely access local resources such as the file system and peripherals such as printers. Another kind of client application is the traditional ActiveE control 2now replaced by the managed Windows orms control3 deployed over the (nternet as a Web page. %his application is much like other client applicationsB it is executed natively, has access to local resources, and includes graphical elements. (n the past, developers created such applications using 7)7QQ in con$unction with the "icrosoft oundation 7lasses 2" 73 or with a rapid application development 25A<3 environment such as "icrosoftM 1isual 4asicM. %he .D!% ramework incorporates aspects of these existing products into a single, consistent development environment that drastically simplifies the development of client applications. %he Windows orms classes contained in the .D!% ramework are designed to be used for :'( development. Fou can easily create command windows, buttons, menus, toolbars, and other screen elements with the flexibility necessary to accommodate shifting business needs. or example, the .D!% ramework provides simple properties to ad$ust visual

attributes associated with forms. (n some cases the underlying operating system does not support changing these attributes directly, and in these cases the .D!% ramework automatically recreates the forms.

*,

Work Flow Management System

%his is one of many ways in which the .D!% ramework integrates the developer interface, making coding simpler and more consistent. 'nlike ActiveE controls, Windows orms controls have semi0trusted access to a userLs computer. %his means that binary or natively executing code can access some of the resources on the userLs system 2such as :'( elements and limited file access3 without being able to access or compromise other resources. 4ecause of code access security, many applications that once needed to be installed on a userLs system can now be safely deployed through the Web. Four applications can implement the features of a local application while being deployed like a Web page.

Server A##lication "evelo#ment


?erver0side applications in the managed world are implemented through runtime hosts. 'nmanaged applications host the common language runtime, which allows your custom managed code to control the behavior of the server. %his model provides you with all the features of the common language runtime and class library while gaining the performance and scalability of the host server. %he following illustration shows a basic network schema with managed code running in different server environments. ?ervers such as ((? and ?OA ?erver can perform standard operations while your application logic executes through the managed code.

Server;si e manage

co e

A?#.D!% is the hosting environment that enables developers to use the .D!% ramework to target Web0based applications. 8owever, A?#.D!% is more than $ust a runtime hostK it is a complete architecture for developing Web sites and (nternet0 distributed ob$ects using managed code. 4oth Web orms and E"A Web services use ((? and A?#.D!% as the publishing mechanism for applications, and both have a collection of supporting classes in the .D!% ramework.

*-

Work Flow Management System

E"A Web services, an important evolution in Web0based technology, are distributed, server0side application components similar to common Web sites. 8owever, unlike Web0based applications, E"A Web services components have no '( and are not targeted for browsers such as (nternet !xplorer and Detscape Davigator. (nstead, E"A Web services consist of reusable software components designed to be consumed by other applications, such as traditional client applications, Web0based applications, or even other E"A Web services. As a result, E"A Web services technology is rapidly moving application development and deployment into the highly distributed environment of the (nternet. (f you have used earlier versions of A?# technology, you will immediately notice the improvements that A?#.D!% and Web orms offers. or example, you can develop Web orms pages in any language that supports the .D!% ramework. (n addition, your code no longer needs to share the same file with your 8%%# text 2although it can continue to do so if you prefer3. Web orms pages execute in native machine language because, like any other managed application, they take full advantage of the runtime. (n contrast, unmanaged A?# pages are always scripted and interpreted. A?#.D!% pages are faster, more functional, and easier to develop than unmanaged A?# pages because they interact with the runtime like any managed application. %he .D!% ramework also provides a collection of classes and tools to aid in

development and consumption of E"A Web services applications. E"A Web services are built on standards such as ?=A# 2a remote procedure0call protocol3, E"A 2an extensible data format3, and W?<A 2the Web ?ervices <escription Aanguage3. %he .D!% ramework is built on these standards to promote interoperability with non0 "icrosoft solutions. or example, the Web ?ervices <escription Aanguage tool included with the .D!% ramework ?<6 can query an E"A Web service published on the Web, parse its W?<A description, and produce 7R or 1isual 4asic source code that your application can use to become a client of the E"A Web service.

*.

Work Flow Management System

%he source code can create classes derived from classes in the class library that handle all the underlying communication using ?=A# and E"A parsing. Although you can use the class library to consume E"A Web services directly, the Web ?ervices <escription Aanguage tool and the other tools contained in the ?<6 facilitate your development efforts with the .D!% ramework. (f you develop and publish your own E"A Web service, the .D!% ramework

provides a set of classes that conform to all the underlying communication standards, such as ?=A#, W?<A, and E"A. 'sing those classes enables you to focus on the logic of your service, without concerning yourself with the communications infrastructure required by distributed software development. inally, like Web orms pages in the managed environment, your E"A Web service will run with the speed of native machine language using the scalable communication of ((?.

Active Server Pages(&$T


A?#.D!% is a programming framework built on the common language runtime that can be used on a server to build powerful Web applications. A?#.D!% offers several important advantages over previous Web development modelsB

n&anced (erformance+ A?#.D!% is compiled common language runtime


code running on the server. 'nlike its interpreted predecessors, A?#.D!% can take advantage of early binding, $ust0in0time compilation, native optimization, and caching services right out of the box. %his amounts to dramatically better performance before you ever write a line of code.

,orld!$lass %ool Support. %he A?#.D!% framework is complemented by


a rich toolbox and designer in the 1isual ?tudio integrated development environment. WF?(WF: editing, drag0and0drop server controls, and automatic deployment are $ust a few of the features this powerful tool provides.

*/

Work Flow Management System

(ower and )le-i.ility+ 4ecause A?#.D!% is based on the common language


runtime, the power and flexibility of that entire platform is available to Web application developers. %he .D!% ramework class library, "essaging, and <ata Access solutions are all seamlessly accessible from the Web. A?#.D!% is also language0independent, so you can choose the language that best applies to your application or partition your application across many languages. urther, common language runtime interoperability guarantees that your existing investment in 7="0 based development is preserved when migrating to A?#.D!%.

Simplicity. A?#.D!% makes it easy to perform common tasks, from simple form
submission and client authentication to deployment and site configuration. or example, the A?#.D!% page framework allows you to build user interfaces that cleanly separate application logic from presentation code and to handle events in a simple, 1isual 4asic 0 like forms processing model. Additionally, the common language runtime simplifies development, with managed code services such as automatic reference counting and garbage collection.

Managea.ility. A?#.D!% employs a text0based, hierarchical configuration


system, which simplifies applying settings to your server environment and Web applications. 4ecause configuration information is stored as plain text, new settings may be applied without the aid of local administration tools. %his Jzero local administrationJ philosophy extends to deploying A?#.D!% ramework applications as well. An A?#.D!% ramework application is deployed to a server simply by copying the necessary files to the server. Do server restart is required, even to deploy or replace running compiled code.

Scala.ility and A'aila.ility. A?#.D!% has been designed with scalability


in mind, with features specifically tailored to improve performance in clustered and multiprocessor environments. urther, processes are closely monitored and managed by the A?#.D!% runtime, so that if one misbehaves 2leaks, deadlocks3, a new process can be created in its place, which helps keep your application constantly available to handle requests.

*;

Work Flow Management System

$ustomi/a.ility and

-tensi.ility. A?#.D!% delivers a well0factored

architecture that allows developers to Jplug0inJ their code at the appropriate level. (n fact, it is possible to extend or replace any subcomponent of the A?#.D!% runtime with your own custom0written component. (mplementing custom authentication or state services has never been easier.

Security. With built in Windows authentication and per0application


configuration, you can be assured that your applications are secure.

4ang!age S!##ort
%he "icrosoft .D!% #latform currently offers built0in support for three languagesB 7R, 1isual 4asic, and N?cript.

W,at is ASP(&$T Web Forms>


%he A?#.D!% Web orms page framework is a scalable common language runtime programming model that can be used on the server to dynamically generate Web pages. (ntended as a logical evolution of A?# 2A?#.D!% provides syntax compatibility with existing pages3, the A?#.D!% Web orms framework has been specifically designed to address a number of key deficiencies in the previous model. (n particular, it providesB %he ability to create and use reusable '( controls that can encapsulate common functionality and thus reduce the amount of code that a page developer has to write. %he ability for developers to cleanly structure their page logic in an orderly fashion 2not Jspaghetti codeJ3. %he ability for development tools to provide strong WF?(WF: design support for pages 2existing A?# code is opaque to tools3.

+9

Work Flow Management System


@A?#.D!% Web orms pages are text files with an .aspx file name extension. %hey can be deployed throughout an ((? virtual root directory tree. When a browser client requests .aspx resources, the A?#.D!% runtime parses and compiles the target file into a .D!% ramework class. %his class can then be used to dynamically process incoming requests. 2Dote that the .aspx file is compiled only the first time it is accessedK the compiled type instance is then reused across multiple requests3. An A?#.D!% page can be created simply by taking an existing 8%"A file and changing its file name extension to .aspx 2no modification of code is required3. or example, the following sample demonstrates a simple 8%"A page that collects a userLs name and category preference and then performs a form post back to the originating page when a button is clickedB A?#.D!% provides syntax compatibility with existing A?# pages. %his includes support for ST TU code render blocks that can be intermixed with 8%"A content within an .aspx file. %hese code blocks execute in a top0down manner at page render time. "o.e01ehin. Web Forms A?#.D!% supports two methods of authoring dynamic pages. %he first is the method shown in the preceding samples, where the page code is physically declared within the originating .aspx file. An alternative approach00known as the code0behind method00 enables the page code to be more cleanly separated from the 8%"A content into an entirely separate file.

%ntro !ction to ASP(&$T Server Controls


(n addition to 2or instead of3 using ST TU code blocks to program dynamic content, A?#.D!% page developers can use A?#.D!% server controls to program Web pages. ?erver controls are declared within an .aspx file using custom tags or intrinsic 8%"A tags that contain a r!nat23ser)er3 attributes value. (ntrinsic 8%"A tags are handled by one of the controls in the System.Web.4*.5tml"ontrols namespace.

+1

Work Flow Management System


Any tag that doesnLt explicitly map to one of the controls is assigned the type of System.Web.4*.5tml"ontrols.5tml6eneric"ontrol. ?erver controls automatically maintain any client0entered values between round trips to the server. %his control state is not stored on the server 2it is instead stored within an 7in,!t ty,e23hi..en38 form field that is round0tripped between requests3. Dote also that no client0side script is required. (n addition to supporting standard 8%"A input controls, A?#.D!% enables developers to utilize richer custom controls on their pages. or example, the following sample demonstrates how the 7as,:a.rotator8 control can be used to dynamically display rotating ads on a page. A?#.D!% Web orms provide an easy and powerful way to build dynamic Web '(. A?#.D!% Web orms pages can target any browser client 2there are no script library or cookie requirements3. A?#.D!% Web orms pages provide syntax compatibility with existing A?# pages. A?#.D!% server controls provide an easy way to encapsulate common functionality. A?#.D!% ships with +, built0in server controls. <evelopers can also use controls built by third parties. A?#.D!% server controls can automatically pro$ect both up level and down level 8%"A. A?#.D!% templates provide an easy way to customize the look and feel of list server controls. A?#.D!% validation controls provide an easy way to do declarative client or data validation. server

Crystal Re#orts

+&

Work Flow Management System


7rystal 5eports for 1isual 4asic .D!% is the standard reporting tool for 1isual 4asic.D!%K it brings the ability to create interactive, presentation0quality content V which has been the strength of 7rystal 5eports for years V to the .D!% platform. With 7rystal 5eports for 1isual 4asic.D!%, you can host reports on Web and Windows platforms and publish 7rystal reports as 5eport Web ?ervices on a Web server. %o present data to users, you could write code to loop through record sets and print them inside your Windows or Web application. 8owever, any work beyond basic formatting can be complicatedB consolidations, multiple level totals, charting, and conditional formatting are difficult to program. With 7rystal 5eports for 1isual ?tudio .D!%, you can quickly create complex and professional0looking reports. (nstead of coding, you use the 7rystal 5eport <esigner interface to create and format the report you need. %he powerful 5eport !ngine processes the formatting, grouping, and charting criteria you specify.

Re#ort $6#erts
'sing the 7rystal 5eport !xperts, you can quickly create reports based on your development needsB 7hoose from report layout options ranging from standard reports to form letters, or build your own report from scratch. <isplay charts that users can drill down on to view detailed report data. 7alculate summaries, subtotals, and percentages on grouped data. ?how %opD or 4ottomD results of data. 7onditionally format text and rotate text ob$ects.

+*

Work Flow Management System

BAC? $&" T$C8&O4O:5:


Abo!t Microso7t S@4 Server *AAA
"icrosoft ?OA ?erver is a ?tructured Ouery Aanguage 2?OA3 based, client)server relational database. !ach of these terms describes a fundamental part of the architecture of ?OA ?erver.

"atabase
A database is similar to a data file in that it is a storage place for data. Aike a data file, a database does not present information directly to a userK the user runs an application that accesses data from the database and presents it to the user in an understandable format. A database typically has two componentsB the files holding the physical database and the database management system 2<4"?3 software that applications use to access data. %he <4"? is responsible for enforcing the database structure, includingB "aintaining the relationships between data in the database. !nsuring that data is stored correctly and that the rules defining data relationships are not violated. 5ecovering all data to a point of known consistency in case of system failures.

Relational "atabase
%here are different ways to organize data in a database but relational databases are one of the most effective. 5elational database systems are an application of mathematical set theory to the problem of effectively organizing data. (n a relational database, data is collected into tables 2called relations in relational theory3.

++

Work Flow Management System


When organizing data into tables, you can usually find many different ways to define tables. 5elational database theory defines a process, normalization, which ensures that the set of tables you define will organize your data effectively.

ClientBServer:;
(n a client)server system, the server is a relatively large computer in a central location that manages a resource used by many people. When individuals need to use the resource, they connect over the network from their computers, or clients, to the server. !xamples of servers areB (n client)server database architecture, the database files and <4"? software reside on a server. A communications component is provided so applications can run on separate clients and communicate to the database server over a network. %he ?OA ?erver communication component also allows communication between an application running on the server and ?OA ?erver. ?erver applications are usually capable of working with several clients at the same time. ?OA ?erver can work with thousands of client applications simultaneously. %he server has features to prevent the logical problems that occur if a user tries to read or modify data currently being used by others. While ?OA ?erver is designed to work as a server in a client)server network, it is also capable of working as a stand0alone database directly on the client. %he scalability and ease0of0use features of ?OA ?erver allow it to work efficiently on a client without consuming too many resources.

+,

Work Flow Management System Str!ct!re @!ery 4ang!age CS@4D

%o work with data in a database, you must use a set of commands and statements 2language3 defined by the <4"? software. %here are several different languages that can be used with relational databasesK the most common is ?OA. 4oth the American Dational ?tandards (nstitute 2AD?(3 and the (nternational ?tandards =rganization 2(?=3 have defined standards for ?OA. "ost modern <4"? products support the !ntry Aevel of ?OA0;&, the latest ?OA standard 2published in 1;;&3.

S@4 Server Feat!res


"icrosoft ?OA ?erver supports a set of features that result in the following benefitsB

$ase o7 installationE

e#loymentE an

!se

?OA ?erver includes a set of administrative and development tools that improve your ability to install, deploy, manage, and use ?OA ?erver across several sites.

Scala.ility
%he same database engine can be used across platforms ranging from laptop computers running "icrosoft WindowsM ;,);/ to large, multiprocessor servers running "icrosoft Windows D%M, !nterprise !dition.

Data ware&ousing
?OA ?erver includes tools for extracting and analyzing summary data for online analytical processing 2=AA#3. ?OA ?erver also includes tools for visually designing databases and analyzing data using !nglish0based questions.

System integration wit& ot&er ser'er software


?OA ?erver integrates with e0mail, the (nternet, and Windows.

+-

Work Flow Management System

"atabases
A database in "icrosoft ?OA ?erver consists of a collection of tables that contain data, and other ob$ects, such as views, indexes, stored procedures, and triggers, defined to support activities performed with the data. %he data stored in a database is usually related to a particular sub$ect or process, such as inventory information for a manufacturing warehouse. ?OA ?erver can support many databases, and each database can store either interrelated data or data unrelated to that in the other databases. or example, a server can have one database that stores personnel data and another that stores product0related data. Alternatively, one database can store current customer order data, and anotherK related database can store historical customer orders that are used for yearly reporting. 4efore you create a database, it is (mportant to understand the parts of a database and how to design these parts to ensure that the database performs well after it is implemented.

&ormaliFation t,eory:
5elations are to be normalized to avoid anomalies. (n insert, update and delete operations. Dormalization theory is built around the concept of normal forms. A relation is said to be in a particular form if it satisfies a certain specified set if constraints. %o decide a suitable logical structure for given database design the concept of normalization, which are briefly described below. 1. 1 st Dormal orm 21 D. 3B A relation is said to be in 1 D is and only if all unaligned domains contain values only. %hat is the fields of an n0set should have no group items and no repeating groups. &. & nd Dormal orm 2& D. 3 B A relation is said to be in & D is and only if it is in 1 D and every non key attribute is fully dependent on primary key. %his normal takes care of functional dependencies on non0key attributes.

+.

Work Flow Management System

*.

* rd Dormal orm 2* D. 3 B A relation is said to be in * D is and only if it is in & D and every non key attribute is non transitively dependent on the primary key. %his normal form avoids the transitive dependencies on the primary key.

+.

4oyce code Dormal orm 247D 3 B %his is a stronger definition than that of D . A relation is said to be in 47D if and only if every determinant is a 7andidate key.

,.

+ th Dormal orm 2+ D 3 B A relation is said to be in + D if and only if whenever there exists a multi valued dependency in a relation say A0U0U4 then all of the relation are also functionally dependent on A2i.e. A0UE for all attributes x of the relation.3.

-.

, th Dormal orm 2, D 3 =5

#ro$ection Noin Dormal orm 2#ND 3B A

relation 5 is in , D .if and only if every $oin dependency in 5 is implied by the candidate key on 5. A relation can>t be non0loss split into two tables but can be split into three tables. %his is called Noin <ependency.

Mi

leware Tec,nology

Active6 "ata Objects(&et Overview


A<=.D!% is an evolution of the A<= data access model that directly addresses user requirements for developing scalable applications. (t was designed specifically for the web with scalability, statelessness, and E"A in mind. A<=.D!% uses some A<= ob$ects, such as the 7onnection and 7ommand ob$ects, and also introduces new ob$ects. 6ey new A<=.D!% ob$ects include the <ataset, <ata 5eader, and <ata Adapter. %he important distinction between this evolved stage of A<=.D!% and previous data architectures is that there exists an ob$ect 00 the <ataset 00 that is

+/

Work Flow Management System


separate and distinct from any data stores. 4ecause of that, the <ataset functions as a standalone entity. Fou can think of the <ataset as an always disconnected record set that knows nothing about the source or destination of the data it contains. (nside a <ataset, much like in a database, there are tables, columns, relationships, constraints, views, and so forth. A <ata Adapter is the ob$ect that connects to the database to fill the <ataset. %hen, it connects back to the database to update the data there, based on operations performed while the <ataset held the data. (n the past, data processing has been primarily connection0based. Dow, in an effort to make multi0tiered apps more efficient, data processing is turning to a message0based approach that revolves around chunks of information. At the center of this approach is the <ata Adapter, which provides a bridge to retrieve and save data between a <ataset and its source data store. (t accomplishes this by means of requests to the appropriate ?OA commands made against the data store. %he E"A0based <ataset ob$ect provides a consistent programming model that works with all models of data storageB flat, relational, and hierarchical. (t does this by having no LknowledgeL of the source of its data, and by representing the data that it holds as collections and data types. Do matter what the source of the data within the <ataset is, it is manipulated through the same set of standard A#(s exposed through the <ataset and its subordinate ob$ects. While the <ataset has no knowledge of the source of its data, the managed provider has detailed and specific information. %he role of the managed provider is to connect, fill, and persist the <ataset to and from data stores. %he =A! <4 and ?OA ?erver .D!% <ata #roviders 2?ystem.<ata.=le<b and ?ystem.<ata.?ql7lient3 that are part of the .Det ramework provide four basic ob$ectsB the 7ommand, 7onnection, <ata 5eader and <ata Adapter. (n the remaining sections of this document, weLll walk through each part of the <ataset and the =A! <4)?OA ?erver .D!% <ata #roviders

+;

Work Flow Management System


explaining what they are, and how to program against them. %he following sections will introduce you to some ob$ects that have evolved, and some that are new.

%hese ob$ects areB 7onnections. or connection to and managing transactions against a database. 7ommands. or issuing ?OA commands against a database. <ata 5eaders. or reading a forward0only stream of data records from a ?OA

?erver data source. <atasets. or storing, removing and programming against flat data, E"A data and relational data. <ata Adapters. database. When dealing with connections to a database, there are two different optionsB ?OA ?erver .D!% <ata #rovider 2?ystem.<ata.?ql7lient3 and =A! <4 .D!% <ata #rovider 2?ystem.<ata.=le<b3. (n these samples we will use the ?OA ?erver .D!% <ata #rovider. %hese are written to talk directly to "icrosoft ?OA ?erver. %he =A! <4 .D!% <ata #rovider is used to talk to any =A! <4 provider 2as it uses =A! <4 underneath3. or pushing data into a <ataset, and reconciling data against a

$onnections
7onnections are used to Ltalk toL databases, and are represented by provider0specific classes such as ?OA7onnection. 7ommands travel over connections and result sets are returned in the form of streams which can be read by a <ata 5eader ob$ect, or pushed into a <ataset ob$ect.

$ommands
7ommands contain the information that is submitted to a database, and are represented by provider0specific classes such as ?OA7ommand. A command can be a stored procedure call, an '#<A%! statement, or a statement that returns results. Fou can also use input and output parameters, and return values as part of your command syntax.

,9

Work Flow Management System


%he example below shows how to issue an (D?!5% statement against the Dorth wind database.

Data "eaders
%he <ata 5eader ob$ect is somewhat synonymous with a read0only)forward0only cursor over data. %he <ata 5eader A#( supports flat as well as hierarchical data. A <ata 5eader ob$ect is returned after executing a command against a database. %he format of the returned <ata 5eader ob$ect is different from a record set. or example, you might use the <ata 5eader to show the results of a search list in a web page.

Datasets
%he <ataset ob$ect is similar to the A<= 5ecord set ob$ect, but more powerful, and with one other important distinctionB the <ataset is always disconnected. %he <ataset ob$ect represents a cache of data, with database0like structures such as tables, columns, relationships, and constraints. 8owever, though a <ataset can and does behave much like a database, it is important to remember that <ataset ob$ects do not interact directly with databases, or other source data. %his allows the developer to work with a programming model that is always consistent, regardless of where the source data resides. <ata coming from a database, an E"A file, from code, or user input can all be placed into <ataset ob$ects. %hen, as changes are made to the <ataset they can be tracked and verified before updating the source data. %he :et 7hanges method of the <ataset ob$ect actually creates a second <ataset that contains only the changes to the data. %his <ataset is then used by a <ata Adapter 2or other ob$ects3 to update the original data source. %he <ataset has many E"A characteristics, including the ability to produce and consume E"A data and E"A schemas. E"A schemas can be used to describe schemas interchanged via Web ?ervices. (n fact, a <ataset with a schema can actually be compiled for type safety and statement completion.

,1

Work Flow Management System

Data Adapters 01L D23S4L5


%he <ata Adapter ob$ect works as a bridge between the <ataset and the source data. 'sing the provider0specific ?ql<ataAdapter 2along with its associated ?ql7ommand and ?ql7onnection3 can increase overall performance when working with a "icrosoft ?OA ?erver databases.

or other =A! <40supported databases, you would use the =le<b<ataAdapter ob$ect and its associated =le<b7ommand and =le<b7onnection ob$ects. %he <ata Adapter ob$ect uses commands to update the data source after changes have been made to the <ataset. 'sing the ill method of the <ata Adapter calls the ?!A!7% commandK using the 'pdate method calls the (D?!5%, '#<A%! or <!A!%! command for each changed row. Fou can explicitly set these commands in order to control the statements used at runtime to resolve changes, including the use of stored procedures. or ad0hoc scenarios, a 7ommand 4uilder ob$ect can generate these at run0time based upon a select statement. 8owever, this run0time generation requires an extra round0trip to the server in order to gather required metadata, so explicitly providing the (D?!5%, '#<A%!, and <!A!%! commands at design time will result in better run0time performance. 1. A<=.D!% is the next evolution of A<= for the .Det ramework. &. A<=.D!% was created with n0%ier, statelessness and E"A in the forefront. %wo new ob$ects, the <ataset and <ata Adapter, are provided for these scenarios. A<=.D!% can be used to get data from a stream, or to store data in a cache for updates. *. %here is a lot more information about A<=.D!% in the documentation. +. 5emember, you can execute a command directly against the database in order to do inserts, updates, and deletes. Fou donLt need to first put data into a <ataset in order to insert, update, or delete it.

,&

Work Flow Management System


,. Also, you can use a <ataset to bind to the data, move through the data, and navigate data relationships

Client;si e Scri#t C<AGASCR%PTD: 6a'aScript+


Nava?cript is a new scripting language for Web#ages. ?cripts written with $ava script can be embedded into your 8%"A pages. With $ava script you have many or example possibilities for enhancing your 8%"A page with interesting elements.

you are able to respond to user0initiated events quite easily. ?ome effects that are now possible with $ava script were some time ago only possible with 7:(. ?o you can create really sophisticated pages with the helps of $ava script on the (nternet.

7ow can 6a'a Script scripts run8


%he first browser to support $ava script was the Detscape Davigator &.9 of course the higher versions do have $ava script as well. Fou might know that $ava does not run on all Detscape Davigators &.9 2or higher versions3 versions. 4ut this is not true for $ava script 0although there are some problems with the different versions. %he "ac version for example seems to have many bugs. (n the near future there are going to be some other browsers, which support $ava script. %he "icrosoft (nternet explorer *.9 is going to support $ava script. Nava?cript enabled browsers are going to spread soon 0 it is worth learning this new technique now. Fou might realize that is really easy to write Nava ?cript scripts. We have to know is some basic techniques and some work0around for problems you might encounter. =f course we need a basic.

,*

Work Flow Management System


'nderstanding 8%"A before reading this tutorial you can find many really good online resources about 8%"A. 4est you make an online search about Whtml> at yahoo if you want to get informed about 8%"A. Dow ( want to show some small scripts so you can learn how they are implemented into 8%"A0documents and to show which possibilities you have with the new scripting language. %he following is a very small script, which will only print a text into an 8%"A document.

ShtmlU SheadU "y first Nava?cript S)headU SbodyUSbrU %his is a normal 8%"A document SbrU Sscript languageXYNava?criptYU <ocument.write 2Zthis is a $ava scriptY3 S)scriptUSb rU 4acking 8%"A again S)bodyU S)htmlU (f you are using a $ava script enabled0browser at the moment then you will have the possibility to see this script working. (f your browser doesn>t support Nava ?cript then this output might be some kind of strange[ %his is a normal 8%"A document %his is $ava script\ 4ack in 8%"A again.

,+

Work Flow Management System

F!nctions
unctions are bet declared between the S8eadU tag of 8%"A page. unctions are

called by user0initiated events. ?eems reasonable to keep the functions between the S8eadU tags. %hey are loaded first before a user can do anything that might call a function. ?cripts can be placed between inside comment fields to ensure that older browser do not display the script itself. ShtmlU SheadU Sscript languageXYNava?criptYU function pushbutton 23 ] alert 2Z8ello\Y3K ^ S)scriptU S)headU SbodyU SformU Sinput typeXYbuttonY nameXY4utton1Y valueXYpush meY onclickXYpushbutton 23YU S)formU S)bodyU S)htmlU

,,

Work Flow Management System


(f we want to test this one immediately and you are using a Nava ?cript enabled browser then please go ahead and push the button. %his script will create a button and when you press it a window will pop up saying Zhello\Y (n fact we have a lot of possibilities $ust by adding functions to our scripts. %he common browsers transmit the form information by either methodB here>s the complete tag including the :!% transmission method attribute for the previous form

-ample
S orm method X:!% actionXhttpB))www.mycompany.com)cgi0bin)upfdate.plU [[[ S)formU

%n#!t elements(
'se the SinputU tag to define any one of a number of common form elements including text fields multiple choice lists click able images and submission buttons. %here are many attributers for this tag only that types and name attributes are required for each element, each type of input element uses only a subset of the followed attributes. Additional SinputU attributes may be required based upon which type of the form element you specify.

Su.mit .utton+
%he submit button 2Sinput typeXsubmitU3 does what its name implies, settings in motion the form>s submission to the server from the browser. We many have more than submit buttons will be added to the parameter list the browser sends along to the server. -ample S (nput type XYsubmitYU

,-

Work Flow Management System


S(nput typeXYsubmitY valueXYsubmitY nameXYnameYU

"eset .utton+
%he reset button if firm SinputU button is nearly self0 explanatoryK it lets the user reset erase or set to some default value all elements in the form. 4y default the browser displays a reset button worth the label ZresetY. We can change that by specifying a value attribute with tour own button label.

"ATABAS$ MO"$4S
A<=.D!% and accessing the database through applets and A<=.D!% A#( via an intermediate server resulted server resulted in a new type of database model which is different from the client0server model. 4ased on number of intermediate server through the request should go it is named as single tire, two tire and multi tire architecture

Single %ier
(n a single tier the server and client are the same in the sense that a client program that needs information 2client3 and the source of this type of architecture is also possible in $ava, in case flat files are used to store the data. 8owever this is useful only in case of small applications. %he advantage with this is the simplicity and portability of the application developed.

?erver and client

<atabase

,.

Work Flow Management System

%wo %ier 0client!ser'er5


(n two tier architecture the database resides in one machine and client in different machine they are connected through the network. (n this type of architecture a database management takes control of the database and provides access to clients in a network. %his software bundle is also called as the server. ?oftware in different machines, requesting for information are called as the clients.

?erver

7lient

<atabase 7lient

%&ree %ier and 9!%ier


(n the three0tier architecture, any number servers can access the database that resides on server. Which in turn serve clients in a network_ or example, you want to access the database using $ava applets, the applet running in some other machine, can send request only to the server from which it is down loaded. or this reason we will

,/

Work Flow Management System


need to have a intermediate server which will accept the requests from applets and them to the actual database server. %his intermediate server acts as a two0way communication channel also. %his is the information or data from the database is passed on to the applet that is requesting it. %his can be extended to make n tiers of servers, each server carrying to specific type of request from clientsK however in practice only * tiers architecture is popular.

CH 4ang!age
"# 2pronounced 7 ?harp3 is a multi0paradigm programming language that encompasses functional, imperative, generic, ob$ect0oriented 2class0based3, and component0oriented programming disciplines. (t was developed by "icrosoft as part of the .D!% initiative and later approved as a standard by !7"A 2E"MA099:3 and (?= 2*S+;*E" 292<03. 7R is one of the ++ programming languages supported by the .D!% rameworkLs 7ommon Aanguage 5untime. 7R is intended to be a simple, modern, general0purpose, ob$ect0oriented programming language. Anders 8e$lsberg, the designer of <elphi, leads the team which is developing 7R. (t has an ob$ect0oriented syntax based on 7QQ and is heavily influenced by other programming languages such as <elphi and Nava. (t was initially named 7ool, which stood for J7 like =b$ect =riented AanguageJ. 8owever, in Nuly &999, when "icrosoft made the pro$ect public, the name of the programming language was given as 7R. %he most recent version of the language is 7R *.9 which was released in con$unction with the .D!% ramework *., in &99.. %he next proposed version, 7R +.9, is in development.

8istory

,;

Work Flow Management System

(n 1;;-, ?un "icrosystems released the Nava programming language with "icrosoft soon purchasing a license to implement it in their operating system. Nava was originally meant to be a platform independent language, but "icrosoft, in their implementation, broke their license agreement and made a few changes that would essentially inhibit NavaLs platform0independent capabilities. ?un filed a lawsuit and "icrosoft settled, deciding to create their own version of a partially compiled, partially interpreted ob$ect0oriented programming language with syntax closely related to that of 7QQ.

<uring the development of .D!%, the class libraries were originally written in a language)compiler called ?imple "anaged 7 2?"73. (n Nanuary 1;;;, Anders 8e$lsberg formed a team to build a new language at the time called 7ool, which stood for J7 like =b$ect =riented AanguageY. "icrosoft had considered keeping the name J7oolJ as the final name of the language, but chose not to do so for trademark reasons. 4y the time the .D!% pro$ect was publicly announced at the Nuly &999 #rofessional <evelopers 7onference, the language had been renamed 7R, and the class libraries and A?#.D!% runtime had been ported to 7R. 7RLs principal designer and lead architect at "icrosoft is Anders 8e$lsberg, who was previously involved with the design of 1isual NQQ, 4orland <elphi, and %urbo #ascal. (n interviews and technical papers he has stated that flaws in most ma$or programming languages 2e.g. 7QQ, Nava, <elphi, and ?malltalk3 drove the fundamentals of the 7ommon Aanguage 5untime 27A53, which, in turn, drove the design of the 7R programming language itself. ?ome argue that 7R shares roots in other languages.

Feat!res o7 CH:;

-9

Work Flow Management System


4y design, 7R is the programming language that most directly reflects the underlying 7ommon Aanguage (nfrastructure 27A(3. "ost of 7RLs intrinsic types correspond to value0types implemented by the 7A( framework. 8owever, the 7R language specification does not state the code generation requirements of the compilerB that is, it does not state that a 7R compiler must target a 7ommon Aanguage 5untime 27A53, or generate 7ommon (ntermediate Aanguage 27(A3, or generate any other specific format. %heoretically, a 7R compiler could generate machine code like traditional compilers of 7QQ or =5%5ADK in practice, all existing 7R implementations target 7(A. ?ome notable 7R distinguishing features areB %here are no global variables or functions. All methods and members must be declared within classes. (t is possible, however, to use static methods)variables within public classes instead of global variables)functions.

Aocal variables cannot shadow variables of the enclosing block, unlike 7 and 7QQ. 1ariable shadowing is often considered confusing by 7QQ texts. 7R supports a strict 4oolean data type, bool. ?tatements that take conditions, such as
while

and if, require an expression of a 4oolean type. While 7QQ also has a

4oolean type, it can be freely converted to and from integers, and expressions such as if (a) require only that a is convertible to bool, allowing a to be an int, or a pointer. 7R disallows this Jinteger meaning true or falseJ approach on the grounds that forcing programmers to use expressions that return exactly bool can prevent certain types of programming mistakes such as if (a = b) 2use of = instead of ==3. (n 7R, memory address pointers can only be used within blocks specifically marked as unsafe, and programs with unsafe code need appropriate permissions to run. "ost ob$ect access is done through safe ob$ect references, which are always either pointing to a valid, existing ob$ect, or have the well0defined null valueK a reference to a garbage0collected ob$ect, or to random block of memory, is impossible to obtain. An unsafe pointer can point to an instance of a value0type, array, string, or a block of memory allocated on a stack. 7ode that is not marked as unsafe can still store and manipulate pointers through the ?ystem.(nt#tr type, but cannot dereference them.

-1

Work Flow Management System


"anaged memory cannot be explicitly freed, but is automatically garbage collected. :arbage collection addresses memory leaks. 7R also provides direct support for deterministic finalization with the using statement 2supporting the 5esource Acquisition (s (nitialization idiom3. "ultiple inheritance is not supported, although a class can implement any number of interfaces. %his was a design decision by the languageLs lead architect to avoid complication, avoid dependency hell and simplify architectural requirements throughout 7A(.

7R is more type safe than 7QQ. %he only implicit conversions by default are those which are considered safe, such as widening of integers and conversion from a derived type to a base type. %his is enforced at compile0time, during N(%, and, in some cases, at runtime. %here are no implicit conversions between 4ooleans and integers, nor between enumeration members and integers 2except for literal 9, which can be implicitly converted to any enumerated type3. Any user0defined conversion must be explicitly marked as explicit or implicit, unlike 7QQ copy constructors 2which are implicit by default3 and conversion operators 2which are always implicit3.

!numeration members are placed in their own scope. 7R provides syntactic sugar for a common pattern of a pair of methods, accessor 2getter3 and mutator 2setter3 encapsulating operations on a single attribute of a class, in form of properties.

ull type reflection and discovery is available. 7R currently 2as of * Nune &99/3 has .. reserved words.

Common Ty#e system CCTSD


7R has a unified type system. %his unified type system is called "ommon Ty,e System ="TS>.

-&

Work Flow Management System


A unified type system implies that all types, including primitives such as integers, are subclasses of the ?ystem.=b$ect class. or example, every type inherits a %o?tring() method. or performance reasons, primitive types 2and value types in general3 are internally allocated on the stack.

Categories o7

ata ty#es

7%? separate data types into two categoriesB 1alue types 5eference types

1alue types are plain aggregations of data. (nstances of value types do not have referential identity nor referential comparison semantics 0 equality and inequality comparisons for value types compare the actual data values within the instances, unless the corresponding operators are overloaded. 1alue types are derived from ?ystem.1alue%ype, always have a default value, and can always be created and copied. ?ome other limitations on value types are that they cannot derive from each other 2but can implement interfaces3 and cannot have a default 2parameter less3 constructor. !xamples of value types are some primitive types, such as int 2a signed *&0bit integer3, float 2a *&0bit (!!! floating0point number3, char 2a 1-0bit 'nicode code point3, and ?ystem.<ate%ime 2identifies a specific point in time with millisecond precision3. (n contrast, reference types have the notion of referential identity 0 each instance of reference type is inherently distinct from every other instance, even if the data within both instances is the same. %his is reflected in default equality and inequality comparisons for reference types, which test for referential rather than structural equality, unless the corresponding operators are overloaded 2such as the case for ?ystem.?tring3. (n general, it is not always possible to create an instance of a reference type, nor to copy an existing instance, or perform a value comparison on two existing instances, though specific reference types can provide such services by exposing a

-*

Work Flow Management System


public constructor or implementing a corresponding interface 2such as (7loneable or (7omparable3. !xamples of reference types are object 2the ultimate base class for all other 7R classes3, ?ystem.?tring 2a string of 'nicode characters3, and ?ystem.Array 2a base class for all 7R arrays3. 4oth type categories are extensible with user0defined types.

Bo6ing an

!nbo6ing

Boxing is the operation of converting a value of a value type into a value of a corresponding reference type.

-ample+ int foo X +&K ob$ect bar X fooK )) 1alue type... )) foo is boxed to bar.

Unboxing is the operation of converting a value of a reference type 2previously boxed3 into a value of a value type. -ample+ int foo X +&K ob$ect bar X fooK )) 1alue type. )) foo is boxed to bar.

int foo& X 2int3barK )) 'nboxed back to value type.

Feat!res o7 CH *(A
Dew features in 7R for the .D!% ?<6 &.9 2corresponding to the *rd edition of the !7"A0**+ standard3 isB

Partial class

-+

Work Flow Management System


#artial classes allow implementation of a class to be spread between several files, with each file containing one or more class members. (t is primary useful when parts of a class are automatically generated. or example, the feature is heavily used by code0 generating user interface designers in 1isual ?tudio. file1.csB public partial class "y7lass ] public void "y"ethod123 ] )) "anually written code ^ ^ file&.csB public partial class "y7lass ] public void "y"ethod&23 ] )) Automatically generated code ^ ^

:enerics
:enerics, or parameterized types, or parametric polymorphism is a .D!% &.9 feature supported by 7R. 'nlike 7QQ templates, .D!% parameterized types are instantiated at runtime rather than by the compilerK hence they can be cross0language whereas 7QQ templates cannot. %hey support some features not supported directly by 7QQ templates such as type constraints on generic parameters by use of interfaces. =n the other hand, 7R does not support non0type generic parameters. 'nlike generics in Nava, .D!% generics use reification to make parameterized types first0class ob$ects in the 7A(

-,

Work Flow Management System


1irtual "achine, which allows for optimizations and preservation of the type information.

Static classes
?tatic classes are classes that cannot be instantiated or inherited from, and that only allow static members. %heir purpose is similar to that of modules in many procedural languages.

A new 7orm 7!nctionality

o7

iterator

#rovi ing

generator

A new form of iterator that provides generator functionality, using a yield return construct similar to yield in #ython. )) "ethod that takes an iterable input 2possibly an array3 )) and returns all even numbers. public static (!numerableSintU :et!ven2(!numerableSintU numbers3 ] foreach 2int i in numbers3 ] if 2i T & XX 93 yield return iK ^ ^

Anonymo!s

elegates

Anonymous delegates provide closure functionality in 7R. 7ode inside the body of an anonymous delegate has full read)write access to local variables, method parameters,

--

Work Flow Management System


and class members in scope of the delegate, excepting out and ref parameters. or e-ample+! int ?um=fArray!lements2intHI array3 ] int sum X 9K Array. or!ach2 array, delegate2int x3 ] sum QX xK ^ 3K return sumK ^

"elegate covariance an
return and parameter types, respectively.

contravariance

7onversions from method groups to delegate types are covariant and contravariant in

T,e accessibility o7 #ro#erty accessors can be set in e#en ently


-ample+ string status X string.!mptyK public string ?tatus ] get ] return statusK ^ ^ )) anyone can get value of this property, protected set ] status X valueK ^ )) but only derived classes can change it

&!llable ty#es

-.

Work Flow Management System


Dullable value types 2denoted by a question mark, e.g. int? i = null;3 which add
null

to the set of allowed values for any value type. %his provides improved

interaction with ?OA databases, which can have nullable columns of types corresponding to 7R primitive typesB an ?OA INTEGER N !! column type directly translates to the 7R int?. Dullable types received an eleventh0hour improvement at the end of August &99,, mere weeks before the official launch, to improve their boxing characteristicsB a nullable variable which is assigned null is not actually a null reference, but rather an instance of struct Nullable"T# with property $as%alue equal to false. When boxed, the Nullable instance itself is boxed, and not the value stored in it, so the resulting reference would always be non0null, even for null values. %he following code illustrates the corrected flawB

int_ i X nullK ob$ect o X iK if 2o XX null3 7onsole.WriteAine2J7orrect behaviour 0 runtime version from ?eptember &99, or laterJ3K else 7onsole.WriteAine2J(ncorrect behaviour 0 pre0release runtime 2from before ?eptember &99,3J3K When copied into ob$ects, the official release boxes values from Dullable instances, so null values and null references are considered equal. %he late nature of this fix caused some controversy, since it required core07A5 changes affecting not only .D!%&, but all dependent technologies 2including 7R, 14, ?OA ?erver &99, and 1isual ?tudio &99,3.

-/

Work Flow Management System

"ATABAS$ TAB4$S:
3ser 4ogin Table
Name empid password N!ll;Not N!ll Dot Dull Dull Ty,e varchar2&93 varchar2&93 ?ey #rimary 6ey

A min 4ogin Table


Name Adminname password N!ll;Not N!ll Dot Dull Dull Ty,e varchar2&93 varchar2&93 ?ey #rimary 6ey

$m#loyee "etails Table


Name !mployee(d N!ll;Not N!ll Dot Dull Ty,e varchar2&93 ?ey #rimary 6ey

-;

Work Flow Management System


!mployeeDame <esignation ?killset %eamAead(d "anager(d Working4lock Working loor WorkingWing Work?tation 7ontactDum 4usiness#hone Address 4usiness"ail(d =ther"ail(d Dull Dull Dull Dull Dull Dull Dull Dull Dull Dull Dull Dull Dull Dull Dull varchar2&93 varchar2&93 varchar2&93 varchar2&93 varchar2&93 varchar2&93 varchar2&93 varchar2&93 varchar2&93 bigint bigint varchar2&93 varchar2&93 varchar2&93 varchar2&93

Time S,eet Table


Name !mployee(d Workdate leavetype time ?tatus 7ompleted8ours Approvar N!ll;Not N!ll Dull Dull Dull Dull Dull Dull Dull Ty,e varchar2&93 varchar2&93 varchar2&93 int varchar2&93 int varchar2&93 ?ey

Work S,eet Table


Name seriealno !mployee(d Working<ate N!ll;Not N!ll Dull Dull Dull Ty,e varchar2&93 varchar2&93 datetime ?ey

.9

Work Flow Management System


enter%ime Aeaving%ime Dull Dull datetime datetime

Project "etails
Name id1 pro$ectname assigneddate deliverydate client N!ll;Not N!ll Dull Dull Dull Dull Dull Ty,e varchar2&93 varchar2&93 datetime datetime varchar2&93 ?ey

F$AS%B%4%T5 ST3"5:
easibility study is conducted once the problem is clearly understood. easibility study is a high level capsule version of the entire system analysis and design process. %he ob$ective is to determine quickly at a minimum expense how to solve a problem. %he purpose of feasibility is not to solve the problem but to determine if the problem is worth solving. %he system has been tested for feasibility in the following points. 1. %echnical easibility &. !conomical easibility *. =perational easibility.

Tec,nical Feasibility

.1

Work Flow Management System


%he pro$ect entitles J7ourier ?ervice ?ystemY is technically feasibility because of the below mentioned feature. %he pro$ect was developed in Nava which :raphical 'ser (nterface. (t provides the high level of reliability, availability and compatibility. All these make Nava an appropriate language for this pro$ect. %hus the existing software Nava is a powerful language.

$conomical Feasibility
%he computerized system will help in automate the selection leading the profits and details of the organization. With this software, the machine and manpower utilization are expected to go up by /90;9T approximately. %he costs incurred of not creating the system are set to be great, because precious time can be wanted by manually.

O#erational Feasibility
(n this pro$ect, the management will know the details of each pro$ect where he may be presented and the data will be maintained as decentralized and if any inquires for that particular contract can be known as per their requirements and necessaries.

%m#lementation:
(mplementation is the stage where the theoretical design is turned into a working system. %he most crucial stage in achieving a new successful system and in giving confidence on the new system for the users that it will work efficiently and effectively. %he system can be implemented only after thorough testing is done and if it is found to work according to the specification.

.&

Work Flow Management System

(t involves careful planning, investigation of the current system and its constraints on implementation, design of methods to achieve the change over and an evaluation of change over methods a part from planning. %wo ma$or tasks of preparing the implementation are education and training of the users and testing of the system. %he more complex the system being implemented, the more involved will be the systems analysis and design effort required $ust for implementation. %he implementation phase comprises of several activities. %he required hardware and software acquisition is carried out. %he system may require some software to be developed. or this, programs are written and tested. %he user then changes over to his new fully tested system and the old system is discontinued.

T$ST%&::
%he testing phase is an important part of software development. (t is the computerized system will help in automate process of finding errors and missing operations and also a complete verification to determine whether the ob$ectives are met and the user requirements are satisfied. ?oftware testing is carried out in three stepsB 1. %he first includes unit testing, where in each module is tested to provide

its correctness, validity and also determine any missing operations and to verify whether the ob$ectives have been met. !rrors are noted down and corrected immediately. 'nit testing is the important and ma$or part of the pro$ect. ?o errors are rectified easily in particular module and program clarity is increased. (n this pro$ect

.*

Work Flow Management System


entire system is divided into several modules and is developed individually. ?o unit testing is conducted to individual modules. &. %he second step includes (ntegration testing. (t need not be the case,

the software whose modules when run individually and showing perfect results, will also show perfect results when run as a whole. %he individual modules are clipped under this ma$or module and tested again and verified the results. %his is due to poor interfacing, which may results in data being lost across an interface. A module can have inadvertent, adverse effect on any other or on the global data structures, causing serious problems. *. %he final step involves validation and testing which determines which

the software functions as the user expected. 8ere also some modifications were. (n the completion of the pro$ect it is satisfied fully by the end user.

Maintenance an

environment:

A? the number of computer based systems, grieve libraries of computer software began to expand. (n house developed pro$ects produced tones of thousand soft program source statements. ?oftware products purchased from the outside added hundreds of thousands of new statements. A dark cloud appeared on the horizon. All of these programs, all of those source statements0had to be corrected when false were detected, modified as user requirements changed, or adapted to new hardware that was purchased. %hese activities were collectively called software "aintenance. %he maintenance phase focuses on change that is associated with error correction, adaptations required as the softwareLs environment evolves, and changes due to enhancements brought about by changing customer requirements. changes are encountered during the maintenance phase. 7orrection Adaptation our types of

.+

Work Flow Management System


!nhancement #revention

Correction:
!ven with the best quality assurance activities is lightly that the customer will uncover defects in the software. 7orrective maintenance changes the software to correct defects. "aintenance is a set of software !ngineering activities that occur after software has been delivered to the customer and put into operation. ?oftware configuration management is a set of tracking and control activities that began when a software pro$ect begins and terminates only when the software is taken out of the operation.

We may define maintenance by describing four activities that are undertaken after a program is released for useB 7orrective "aintenance Adaptive "aintenance #erfective "aintenance or !nhancement #reventive "aintenance or reengineering =nly about &9 percent of all maintenance work are spent Jfixing mistakesJ. %he remaining /9 percent are spent adapting existing systems to changes in their external environment, making enhancements requested by users, and reengineering an application for use.

ADA(%A%I19+

.,

Work Flow Management System


=ver time, the original environment 2!U:., 7#', operating system, business rules, external product characteristics3 for which the software was developed is likely to change. Adaptive maintenance results in modification to the software to accommodate change to its external environment.

97A9$ M 9%+
As software is used, the customer)user will recognize additional functions that will provide benefit. #erceptive maintenance extends the software beyond its original function requirements.

(" : 9%I19+
7omputer software deteriorates due to change, and because of this, preventive maintenance, often called software re engineering, must be conducted to enable the software to serve the needs of its end users. (n essence, preventive maintenance makes changes to computer programs so that they can be more easily corrected, adapted, and enhanced. ?oftware configuration management 2?7"3 is an umbrella activity that is applied throughout the software process.

SOFTWAR$ M$T8O"O4O:5
%he software methodology followed in this pro$ect includes the ob$ect0oriented methodology and the application system development methodologies. %he description of these methodologies is given below.

A##lication System "evelo#ment = A 4i7e cycle A##roac,


Although there are a growing number of applications 2such as decision support systems3 that should be developed using an experimental process strategy such as prototyping, a significant amount of new development work continue to involve ma$or

.-

Work Flow Management System


operational applications of broad scope. %he application systems are large highly structured. 'ser task comprehension and developer task proficiency is usually high. %hese factors suggest a linear or iterative assurance strategy. %he most common method for this stage class of problems is a system development life cycle modal in which each stage of development is well defined and has straightforward requirements for deliverables, feedback and sign off. %he system development life cycle is described in detail since it continues to be an appropriate methodology for a significant part of new development work. %he basic idea of the system development life cycle is that there is a well0defined process by which an application is conceived and developed and implemented. %he life cycle gives structure to a creative process. (n order to manage and control the development effort, it is necessary to know what should have been done, what has been done, and what has yet to be accomplished. %he phrases in the system development life cycle provide a basis for management and control because they define segments of the flow of work, which can be identified for managerial purposes and specifies the documents or other deliverables to be produced in each phase.

%he phases in the life cycle for information system development are described differently by different writers, but the differences are primarily in the amount of necessity and manner of categorization. %here is a general agreement on the flow of development steps and the necessity for control procedures at each stage. %he information system development cycle for an application consists of three ma$or stages. <efinition. <evelopment. (nstallation and operation. %he first stage of the process, which defines the information requirements for a feasible cost effective system. %he requirements are then translated into a physical

..

Work Flow Management System


system of forms, procedures, programs etc., by the system design, computer programming and procedure development. %he resulting system is test and put into operation. Do system is perfect so there is always a need for maintenance changes. %o complete the cycle, there should be a post audit of the system to evaluate how well it performs and how well it meets the cost and performance specifications. %he stages of definition, development and installation and operation can therefore be divided into smaller steps or phrases as follows.

"e7inition
#roposed definition B preparation of request for proposed applications.

easibility assessmentB evaluation of feasibility and cost benefit of proposed system. (nformation requirement analysisB determination of information needed.

Design
7onceptual design #hysical system designB B 'ser0oriented design of application development. <etailed design of flows and processes in applications

processing system and preparation of program specification.

De'elopment
#rogram development #rocedure development B coding and testing of computer programs. B design of procedures and preparation of user instructions.

Installation and operation


7onversion =peration and maintenanceB #ost audit B B final system test and conversion. "onth to month operation and maintenance !valuation of development process, application system

and results of use at the completion of the each phase, formal approval sign0off is required from the users as well as from the manager of the pro$ect development.

./

Work Flow Management System

8TM4 CO"$:
ST` #age AanguageXJ7RJ "aster#age ileXJa)login.masterJ (nheritsXJ!mployeesJ

Auto!ventWireupXJtrueJ SaspB7ontent 5unatXJ?erverJU GnbspKGnbspKGnbspK

7ode ileXJ!mployee.aspx.csJ

%itleXJ'ntitled #ageJ %hemeXJabcJ TU (<XJ7ontent1J 7ontent#lace8older(<XJ7ontent#lace8older1J

Stable styleXJz0indexB 19,K leftB *&9pxK positionB absoluteK topB 1&9pxJU StrU Std styleXJwidthB ,1pxK heightB &-pxKJU

.;

Work Flow Management System


SaspBAabel %extXJ!mpoloyee(dBJUS)aspBAabelU S)tdU Std styleXJwidthB 199pxK heightB &-pxKJU SaspB%ext4ox (<XJ%ext4ox1J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU Std styleXJwidthB ,1pxJU SaspBAabel %extXJ!mployeeDameBJUS)aspBAabelU S)tdU Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox&J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU Std styleXJwidthB ,1pxJU SaspBAabel (<XJAabel*J runatXJserverJ %extXJ<esignationBJUS)aspBAabelU S)tdU (<XJAabel&J runatXJserverJ (<XJAabel1J runatXJserverJ

Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox*J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU Std styleXJwidthB ,1pxJU SaspBAabel (<XJAabel+J runatXJserverJ %extXJ?kill?etBJUS)aspBAabelU S)tdU Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox+J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU

/9

Work Flow Management System


Std styleXJwidthB ,1pxJU SaspBAabel (<XJAabel,J runatXJserverJ %extXJ%eamAead(dBJUS)aspBAabelU S)tdU Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox,J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU Std styleXJwidthB ,1pxJU SaspBAabel (<XJAabel-J runatXJserverJ %extXJ"anager(dBJUS)aspBAabelU S)tdU Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox-J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU Std styleXJwidthB ,1pxJU SaspBAabel %extXJWorking4lockBJUS)aspBAabelU S)tdU (<XJAabel.J runatXJserverJ

Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox.J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU Std styleXJwidthB ,1pxJU SaspBAabel %extXJWorking loorBJUS)aspBAabelU S)tdU Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox/J runatXJserverJUS)aspB%ext4oxUS)tdU (<XJAabel/J runatXJserverJ

/1

Work Flow Management System


S)trU StrU Std styleXJwidthB ,1pxK heightB &+pxKJU SaspBAabel %extXJWorkingWingBJUS)aspBAabelU S)tdU Std styleXJwidthB 199pxK heightB &+pxKJU SaspB%ext4ox (<XJ%ext4ox;J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU Std styleXJwidthB ,1pxJU SaspBAabel %extXJWork?tationBJUS)aspBAabelU S)tdU Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox19J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU (<XJAabel19J runatXJserverJ (<XJAabel;J runatXJserverJ

Std styleXJwidthB ,1pxJU SaspBAabel %extXJ7ontactDumBJUS)aspBAabelU S)tdU Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox11J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU Std styleXJwidthB ,1pxJU (<XJAabel11J runatXJserverJ

/&

Work Flow Management System


SaspBAabel %extXJ4usinee#honeBJUS)aspBAabelU S)tdU Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox1&J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU Std styleXJwidthB ,1pxJU SaspBAabel (<XJAabel1*J runatXJserverJ %extXJAddressBJUS)aspBAabelU S)tdU Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox1*J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU Std styleXJwidthB ,1pxJU SaspBAabel %extXJ4usiness"ail(dBJUS)aspBAabelU S)tdU Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox1+J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU SaspBAabel (<XJAabel1,J runatXJserverJ %extXJ#ro$ect(dBJUS)aspBAabelU S)tdU Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox1,J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU Std styleXJwidthB ,1pxJU SaspBAabel %extXJ=ther"ail(dBJUS)aspBAabelU (<XJAabel1-J runatXJserverJ (<XJAabel1+J runatXJserverJ (<XJAabel1&J runatXJserverJ

/*

Work Flow Management System


S)tdU Std styleXJwidthB 199pxJU SaspB%ext4ox (<XJ%ext4ox1-J runatXJserverJUS)aspB%ext4oxUS)tdU S)trU StrU Std colspanXJ&JU GnbspKGnbspKGnbspKGnbspKGnbspKGnbspKGnbspKGnbspKGnbspKGnbspKGnbs pKGnbspKGnbspKGnbspKGnbspKGnbspKGnbspKGnbspKGnbspKGnbspK S)tdU S)trU StrU Std colspanXJ&JU SaspB4utton (<XJ4utton&J runatXJserverJ =n7lickXJ4utton&b7lickJ %extXJSJ )UGnbspKGnbspKGnbspK GnbspKGnbspKGnbspKGnbspKGnbspKGnbspK GnbspKGnbspK SaspB4utton (<XJ4utton*J runatXJserverJ =n7lickXJ4utton*b7lickJ %extXJUUJ GnbspKGnbspK SaspB4utton (<XJ4utton+J runatXJserverJ =n7lickXJ4utton+b7lickJ %extXJSSJ GnbspKGnbspK )UGnbspKGnbspKGnbspKGnbspKGnbspK GnbspKGnbspKGnbspKGnbspK )U GnbspKGnbspKGnbspKGnbspKGnbspKGnbspKGnbspKGnbspKGnbspK SaspB4utton (<XJ4utton1J runatXJserverJ =n7lickXJ4utton1b7lickJ %extXJsubmitJ )U

SaspB4utton (<XJ4utton,J runatXJserverJ =n7lickXJ4utton,b7lickJ %extXJUJ )U S)tdU S)trU S)tableU GnbspKSbr )U Sbr )U Sbr )U GnbspK GnbspKGnbspKGnbspKGnbspK

/+

Work Flow Management System


Stable styleXJz0indexB 19+K leftB -19pxK positionB absoluteK topB ;+pxJU StrU Std styleXJwidthB &1pxJU S)tdU Std styleXJwidthB +&pxJU S)tdU Std styleXJwidthB +1pxJU S)tdU Std styleXJwidthB &*pxJU S)tdU S)trU S)tableU SaspB8yperAink (<XJ8yperAink1J runatXJserverJ Davigate'rlXJa)admin welcome.aspxJ ?tyleXJz0indexB 19*K leftB -.&pxK positionB absoluteK topB 1,&pxJU4ackS)aspB8yperAinkU S)aspB7ontentU ont0'nderlineXJ alseJ

CH CO"$
using ?ystemK using ?ystem.<ataK using ?ystem.7onfigurationK using ?ystem.7ollectionsK using ?ystem.WebK using ?ystem.Web.?ecurityK using ?ystem.Web.'(K

/,

Work Flow Management System


using ?ystem.Web.'(.Web7ontrolsK using ?ystem.Web.'(.Web7ontrols.Web#artsK using ?ystem.Web.'(.8tml7ontrolsK using ?ystem.<ata.?ql7lientK public partial class !mployees B ?ystem.Web.'(.#age ] static ?ql7onnection cnn X new ?ql7onnection2Juser idXsaKpasswordXsqlserverKdatabaseXsasiKdata sourceX <A%A?!51!5J3K ?ql<ataAdapter ad1 X new ?ql<ataAdapter2Jselect c from ttbwfmb!mployeeJ, cnn3K <ata?et ds X new <ata?et23K <ata5ow drK static int rnK <ata%able dt X new <ata%able23K protected void #agebAoad2ob$ect sender, !ventArgs e3 ] ad1. ill2ds, Jttbwfmb!mployeeJ3K dt X ds.%ablesHJttbwfmb!mployeeJIK ^

protected void 4utton1b7lick2ob$ect sender, !ventArgs e3 ] cnn.=pen23K string str X Jinsert into ttbwfmb!mployee values2LJ Q %ext4ox1.%ext Q JL,LJ Q %ext4ox&.%ext Q JL,LJ Q %ext4ox*.%ext Q JL,LJ Q %ext4ox+.%ext Q JL,LJ Q %ext4ox,.%ext Q JL,LJ Q %ext4ox-.%ext Q JL,LJ Q %ext4ox..%ext Q JL,LJ Q %ext4ox/.%ext Q JL,LJ Q %ext4ox;.%ext Q JL,LJ Q %ext4ox19.%ext Q JL,LJ Q

/-

Work Flow Management System


%ext4ox11.%ext Q JL,LJ Q %ext4ox1&.%ext Q JL,LJ Q %ext4ox1*.%ext Q JL,LJ Q %ext4ox1+.%ext Q JL,LJ Q %ext4ox1,.%ext Q JL,LJ Q %ext4ox1-.%ext Q JL3JK ?ql7ommand cmd X new ?ql7ommand2str, cnn3K cmd.!xecuteDonOuery23K 5esponse.Write2JSfont colorXLblueLUSbU(nserted ?uccessfully....S)bUS)fontUJ3K cnn.7lose23K ^ public void display23 ] <ata5ow dr X dt.5owsHrnIK %ext4ox1.%ext X drH9I.%o?tring23K %ext4ox&.%ext X drH1I.%o?tring23K %ext4ox*.%ext X drH&I.%o?tring23K %ext4ox+.%ext X drH*I.%o?tring23K %ext4ox,.%ext X drH+I.%o?tring23K %ext4ox-.%ext X drH,I.%o?tring23K %ext4ox..%ext X drH-I.%o?tring23K %ext4ox/.%ext X drH.I.%o?tring23K %ext4ox;.%ext X drH/I.%o?tring23K %ext4ox19.%ext X drH;I.%o?tring23K %ext4ox11.%ext X drH19I.%o?tring23K %ext4ox1&.%ext X drH11I.%o?tring23K %ext4ox1*.%ext X drH1&I.%o?tring23K %ext4ox1+.%ext X drH1*I.%o?tring23K %ext4ox1,.%ext X drH1+I.%o?tring23K %ext4ox1-.%ext X drH1,I.%o?tring23K ^ protected void 4utton&b7lick2ob$ect sender, !ventArgs e3 ] rn X 9K

/.

Work Flow Management System


display23K ^ protected void 4utton*b7lick2ob$ect sender, !ventArgs e3 ] rn X rn Q 1K if 2rn U dt.5ows.7ount 0 13 ] 5esponse.Write2J%his is the Aast 5ecordJ3K rn X dt.5ows.7ount 0 1K ^ display23K ^ protected void 4utton+b7lick2ob$ect sender, !ventArgs e3 ] try ] ad1 X new ?ql<ataAdapter2Jselect c from ttbwfmb!mployeeJ, cnn3K ad1. ill2ds, JttJ3K dt X ds.%ablesHJttJIK rn X rn 0 1K dr X dt.5owsHrnIK if 2rn UX 93 ] dr X dt.5owsHrnIK display23K ^ else ] rn X rn Q 1K 5esponse.Write2J irst record of the tableJ3K

//

Work Flow Management System


^ ^ catch 2!xception ex3 ] 5esponse.Write2ex."essage3K ^ ^ protected void 4utton,b7lick2ob$ect sender, !ventArgs e3 ] ad1 X new ?ql<ataAdapter2Jselect c from ttbwfmb!mployeeJ, cnn3K ad1. ill2ds, JttJ3K dt X ds.%ablesHJttJIK rn X dt.5ows.7ount 0 1K 5esponse.Write2rn.%o?tring233K dr X dt.5owsHrnIK display23K ^ ^

/;

Work Flow Management System

Testing

Testing
%esting is a process of executing a program with the indent of finding an error. %esting is a crucial element of software quality assurance and presents ultimate review of specification, design and coding.

;9

Work Flow Management System


?ystem %esting is an important phase. %esting represents an interesting anomaly for the software. %hus a series of testing are performed for the proposed system before the system is ready for user acceptance testing. A good test case is one that has a high probability of finding an as undiscovered error. A successful test is one that uncovers an as undiscovered error.

Testing Objectives:
1. %esting is a process of executing a program with the intent of finding an error &. A good test case is one that has a probability of finding an as yet undiscovered error *. A successful test is one that uncovers an undiscovered error

Testing Princi#les:
All tests should be traceable to end user requirements %ests should be planned long before testing begins %esting should begin on a small scale and progress towards testing in large !xhaustive testing is not possible %o be most effective testing should be conducted by a independent third party

%he primary ob$ective for test case design is to derive a set of tests that has the highest livelihood for uncovering defects in software. %o accomplish this ob$ective two different categories of test case design techniques are used. %hey are

White box testing. 4lack box testing.

W,ite;bo6 testing:

;1

Work Flow Management System

White box testing focus on the program control structure. %est cases are derived to ensure that all statements in the program have been executed at least once during testing and that all logical conditions have been executed.

Block;bo6 testing:
4lack box testing is designed to validate functional requirements without regard to the internal workings of a program. 4lack box testing mainly focuses on the information domain of the software, deriving test cases by partitioning input and output in a manner that provides through test coverage. (ncorrect and missing functions, interface errors, errors in data structures, error in functional logic are the errors falling in this category.

Testing strategies:
A strategy for software testing must accommodate low0level tests that are necessary to verify that all small source code segments has been correctly implemented as well as high0level tests that validate ma$or system functions against customer requirements.

Testing 7!n amentals:


%esting is a process of executing program with the intent of finding error. A good test case is one that has high probability of finding an undiscovered error. (f testing is conducted successfully it uncovers the errors in the software. %esting cannot show the absence of defects, it can only show that software defects present.

Testing %n7ormation 7low:

;&

Work Flow Management System


(nformation flow for testing flows the pattern. %wo class of input provided to test the process. %he software configuration includes a software requirements specification, a design specification and source code. %est configuration includes test plan and test cases and test tools. %ests are conducted and all the results are evaluated. %hat is test results are compared with expected results. When erroneous data are uncovered, an error is implied and debugging commences.

3nit testing:
'nit testing is essential for the verification of the code produced during the coding phase and hence the goal is to test the internal logic of the modules. 'sing the detailed design description as a guide, important paths are tested to uncover errors with in the boundary of the modules. %hese tests were carried out during the programming stage itself. All units of 1ienna ?OA were successfully tested.

%ntegration testing:
(ntegration testing focuses on unit tested modules and build the program structure that is dictated by the design phase.

System testing:
?ystem testing tests the integration of each module in the system. (t also tests to find discrepancies between the system and it>s original ob$ective, current specification and system documentation. %he primary concern is the compatibility of individual modules. !ntire system is working properly or not will be tested here, and specified path =<47 connection will correct or not, and giving output or not are tested here these verifications and validations are done by giving input values to the system and by comparing with expected output. %op0down testing implementing here.

Acceptance Testing:

;*

Work Flow Management System


%his testing is done to verify the readiness of the system for the implementation. Acceptance testing begins when the system is complete. (ts purpose is to provide the end user with the confidence that the system is ready for use. (t involves planning and execution of functional tests, performance tests and stress tests in order to demonstrate that the implemented system satisfies its requirements. %ools to special importance during acceptance testing includeB %est coverage Analyzer C records the control paths followed for each test case. %iming Analyzer C also called a profiler, reports the time spent in various regions of the code are areas to concentrate on to improve system performance. 7oding standards C static analyzers and standard checkers are used to inspect code for deviations from standards and guidelines.

Test Cases:
%est cases are derived to ensure that all statements in the program have been executed at least once during testing and that all logical conditions have been executed. 'sing White04ox testing methods, the software engineer can drive test cases that :uarantee that logical decisions on their true and false sides. !xercise all logical decisions on their true and false sides. !xecute all loops at their boundaries and with in their operational bounds. !xercise internal data structure to assure their validity.

%he test case specification for system testing has to be submitted for review before system testing commences.

;+

Work Flow Management System

O!t#!t Screens

;,

Work Flow Management System

$m#loyee 4ogin Page

;-

Work Flow Management System

$m#loyee Welcome Page

;.

Work Flow Management System

)orgot (assword

;/

Work Flow Management System

%ime S&eet

;;

Work Flow Management System

,or;s&eet

199

Work Flow Management System

Admin Login

191

Work Flow Management System

Admin ,elcome (age

19&

Work Flow Management System

9ew mployee Details

mployee Details

19*

Work Flow Management System

19+

Work Flow Management System

Manager Login

19,

Work Flow Management System

Manager ,elcome (age

19-

Work Flow Management System

(ro*ect Assigning

19.

Work Flow Management System

(ro*ect 7istory

19/

Work Flow Management System

$lients (ro*ects

19;

Work Flow Management System

(ro*ect Status

119

Work Flow Management System

Logout

111

Work Flow Management System

Concl!s ion

11&

Work Flow Management System

Concl!sion
%he package was designed in such a way that future modifications can be done easily. %he following conclusions can be deduced from the development of the pro$ect. Automation of the entire system improves the efficiency (t provides a friendly graphical user interface which proves to be better when compared to the existing system. (t gives appropriate access to the authorized users depending on their permissions. (t effectively overcomes the delay in communications. 'pdating of information becomes so easier. ?ystem security, data security and reliability are the striking features. %he ?ystem has adequate scope for modification in future if it is necessary.

11*

Work Flow Management System

F!t!re $n,ancements

11+

Work Flow Management System

F!t!re $n,ancements:
%his application avoids the manual work and the problems concern with it. (t is an easy way to obtain the information regarding the various products information that are present in the company. Well ( and my team members have worked hard in order to present an improved website better than the existing one>s regarding the information about the various activities. ?till, we found out that the pro$ect can be done in a better way. #rimarily, when we request information about a particular #ro$ect it $ust shows the employee, pro$ect and no. of quantities available.

11,

Work Flow Management System

B%B4%O:RAP 85

11-

Work Flow Management System

B%B4%O:RAP85
%he following books were referred during the analysis and execution phase of the pro$ect M*"&+S+FT .NET W*T5 "# "icrosoft .net series ASP .NET 2.0 P&+FESS*+NA Wrox #ublishers ASP .NET W*T5 "# 200( Apress #ublications "# "++? 1++? = reilly #ublications P&+6&AMM*N6 M*"&+S+FT ASP .NET 2.0 APP *"AT*+N Wrox #rofessional :uide

1E6*NN*N6 ASP .NET 2.0 E0"+MME&"E *N "# 200( Dovice to #rofessional.

11.

Work Flow Management System

WE1S*TES: www.google.com www.microsoft.com

11/

You might also like