ONLINE CONTRACT MANAGEMENT TOOL
1.
INTRODUCTION
According to a recent study IACCM [2] contracting often is a series of disconnected activities, rather than a process. This leads to poor visibility and metrics for the control. These common inefficiencies relate closely to access to information and to workflow. According to the IACCM study senior managers state that improvement would contribute to better risk management (69%) and reduced costs (89%). Some of the senior managers (23%) also believed that better contract management would lead to higher revenue
The Project entitled “CONTRACT MANAGEMENT Tool” is web based application. Here the demand for a process-view on contract management raised by management, compliance teams and auditors as well as raised by owners of the companies will be implemented. Implementation of Contract approval, tracking, storing and management needs to be shown to use audited workflow will be considered in the form of a cost-effective System.
2.1 PROBLEM STATEMENT
Finding an idea for your engineering
project requires you to identify the needs of yourself, another person, or a
group of people. The act of looking at the world around you to identify these
needs is called need finding.
To help
you find an idea for your engineering project:
Create a list of all the things that
annoy or bother the people around you. Record this bug list in your Design Notebook.
Mind Map possible design problems, ideas, or areas of interest to you.
Finding an Idea for Your Engineering Project:
You know that you want to do an
engineering design project, but how do you come up with an idea or find a
problem to solve? How do you uncover a new problem that no one has tried to
solve yet? Or how do you pick and choose, from all of the products, systems,
and environments already out there, one that you might want to improve? This
process of uncovering a problem, or identifying the need for change or
improvement to an existing solution, is called need finding.
One really great way to start the
need-finding process is to make a "bug list." Think about all of the
things that bug you or bug other people around you. Write them down. They may
seem like small and silly problems, but they can spark ideas for a project or
lead to larger problems that you may not have noticed otherwise.
Here
are some examples of things you might find on someone's bug list:
Uncomfortable
airplane seats
When
one light on a string of Christmas lights goes out
How
quickly chewing gum loses flavor
Moving
(packing boxes, cleaning, unpacking, etc.)
Public
restrooms without toilet paper.
Long
lines at amusement parks.
When
food gets stuck in vending machines.
Dog or
cat hair that gets stuck on clothing.
Sharing armrests with strangers at
the movies.
Challenge yourself to come up with as
many bugs as you can. They don't all have to be things that bother you; think
about other people and the problems that they face as well. You will be
surprised at the number of bugs you can identify in the world around you. Start
this list in your design notebook, and spend a few days recording your ideas.
Notice that there are two different
types of potential project ideas that you have come up with on your bug list.
First, there are the unsolved problems that don't currently have a solution.
Second, there are poorly solved problems that have solutions, but the solutions
are not entirely successful.
Unsolved Problems:
One problem identified in the bug list
above is the issue of food getting stuck in a vending machine. There is
currently no solution for this problem. If you put your money in the machine,
select the food that you want, and then, the food gets stuck before it can drop
to where you can reach it—you are out of luck. You might try shaking or kicking
the machine, but those are not designed solutions to the problem. In cases of
unsolved problems, your engineering project would be to attempt to solve the
problem. For this example, possible project ideas might be to design a product
that can be used to remove stuck foods from vending machines or a new vending
machine that makes it impossible for food to get stuck.
Poorly Solved Problems
An example of a poorly solved
problem from the bug list above is the issue of cat or dog hair getting stuck
on clothing. There is currently a solution to this problem—the lint brush.
However, many people still complain about annoying pet hair on their clothes.
Clearly, the lint brush is not the perfect solution. In cases of poorly solved
problems, your engineering project would be to improve the existing solution or
to replace the existing solution with something more successful. For the pet hair
example, possible project ideas might be to make the lint brush more effective
at removing hair from clothing or to design something better than the lint
brush for the same purpose.
Whether you want to choose an unsolved
problem or a poorly solved problem for your engineering project, there are
plenty of problems out there! Keep in mind that the problems already exist; you
just need to identify them and their users. Also, doing an engineering design
project doesn't always mean inventing something brand new—it often involves
bettering the projects of those before you.
Defining the Problem
Engineers solve problems by creating
new products, systems, or environments. Before creating something, it is very
important to define the problem. Otherwise, you might build something only to
find that it does not meet the original goal!
2.2 EXISTING
SYSTEM AND LIMITATIONS
The study of Existing
System is important before thinking of proposed system. At present in Briefcase
area working on manually, we encounter some problems, like search file and
Fielders, etc. The “on-line Briefcase” by manual is more tedious to get
the right and relevant information about Files and also to maintain the
Folders.
LIMITATIONS OF THE
EXISTING SYSTEM
·
Time
Delay
·
Redundancy
·
Accuracy
·
Information
Retrieval
·
Storage
Media
·
Reports
·
Enquiry
2.3 PROPOSED
SYSTEM
The proposed system
Implements all the earlier said steps in to different modules and integrates
the as a fully fledged system . So that each and every activity is so
meticulously designed to take care of each activity in conjunction
with other. So that overall management becomes very easy and quick.
Advantages:
·
User
will have the complete control over the data and appropriate
·
Proper
control of the higher officials.
·
High
data security
·
Ensure
data accuracy’s.
·
Efficient flow of data.
2.4
FEASIBILITY STUDY
This project are feasible if we give uncontrolled resources and time but a project is said to be feasible if it produces estimated results at the earliest possible time with enough resources.
A feasibility study is a high level capsule version of the system analysis and design process. Its objective is to determine quickly and at a minimum possible expense if the problem can be solved
The thereof feasibility that are carried
out are
· Technical Feasibility
· Operational Feasibility
· Economic Feasibility
2.4.1 Technical Feasibility
Evaluating the technical feasibility is the trickiest part of a feasibility study. This is because at this point in time, not too many-detailed design of the system are present, making it difficult to access issues like performance, costs on (on account of the kind of technology to be deployed) etc. A number of issues have to be considered while doing a technical analysis.
Understand the different technologies involved in the proposed system before commencing the project, we have to be very clear about what are the technologies that are to be required for the development of the new system.
Find out whether the organization currently possesses the required technologies:
Is the required technology available with the organization? If so is the capacity sufficient?
For instance:
“Will the current printer be able to handle the new reports and forms required for the new system?”
2.4.2 Operational Feasibility
Proposed projects are beneficial only if they can be turned into information systems that will meet the organizations operating requirements. Simply stated, this test of feasibility asks if the system will work when it is developed and installed. Are there major barriers to Implementation? Here are questions that will help test the operational
Feasibility of a project:
Is there sufficient support for the project from management from users? If
The current system is well liked and used to the extent that persons will not be able to see reasons for change, there may be resistance.
Are the current business methods acceptable to the user? If they are not,
Users may welcome a change that will bring about a more operational and useful systems.
Have the user been involved in the planning and development of the project?
Early involvement reduces the chances of resistance to the system and in general and increases the likelihood of successful project.
Since the proposed system was to help reduce the hardships encountered in the existing manual system, the new system was considered to be operational feasible.
2.4.3 Economical
feasibility
Economic feasibility attempts 2 weigh the
costs of developing and implementing a new system, against the benefits that
would accrue from having the new system in place. This feasibility study gives
the top management the economic justification for the new system.
A simple economic analysis which gives the actual comparison of costs and benefits are much more meaningful in this case. In addition, this proves to be a useful point of reference to compare actual costs as the project progresses. There could be various types of intangible benefits on account of automation. These could include increased customer satisfaction, improvement in product quality better decision making timeliness of information, expediting activities, improved accuracy of operations, better documentation and record keeping, faster retrieval of information, better employee morale.
3.1 HARDWARE
REQUIRMENTS
System : Pentium IV 2.4 GHz
Hard Disk : 40 GB
CD-Drive : CDD
Monitor : 15 VGA colour
Mouse : Logitech.
RAM : 256 MB
3.2 SOFTWARE
REQUIMENTS
Operating system :
Windows XP Professional
Front End :
Asp.Net 2.0.
Coding Language : Visual C# .Net
Back-End :
Sql Server 2000
Introduction to ASP.NET
ASP.NET is more than the next version of Active Server Pages (ASP); it is a unified Web development platform that provides the services necessary for developers to build enterprise-class Web applications. While ASP.NET is largely syntax compatible with ASP, it also provides a new programming model and infrastructure for more secure, scalable, and stable applications. You can feel free to augment your existing ASP applications by incrementally adding ASP.NET functionality to them.
ASP.NET is a compiled,. NET-based environment; you can author applications in any .NET compatible language, including Visual Basic .NET, C#, and Script .NET. Additionally, the entire .NET Framework is available to any ASP.NET application. Developers can easily access the benefits of these technologies, which include the managed common language runtime environment, type safety, inheritance, and so on.
ASP.NET has been designed to work seamlessly with WYSIWYG HTML editors and other programming tools, including Microsoft Visual Studio .NET. Not only does this make Web development easier, but it also provides all the benefits that these tools have to offer, including a GUI that developers can use to drop server controls onto a Web page and fully integrated debugging support.
Developers can choose from the following two features when creating an ASP.NET application, Web Forms and Web services, or combine these in any way they see fit. Each is supported by the same infrastructure that allows you to use authentication schemes; cache frequently used data, or customizes your application's configuration, to name only a few possibilities.
Web Forms allows you to build powerful forms-based Web pages. When building these pages, you can use ASP.NET server controls to create common UI elements, and program them for common tasks. These controls allow you to rapidly build a Web Form out of reusable built-in or custom components, simplifying the code of a page. For more information, see Web Forms Pages. For information on how to develop ASP.NET server controls, see Developing ASP.NET Server Controls
An XML Web service provides the means to access server functionality remotely. Using Web services, businesses can expose programmatic interfaces to their data or business logic, which in turn can be obtained and manipulated by client and server applications. XML Web services enable the exchange of data in client-server or server-server scenarios, using standards like HTTP and XML messaging to move data across firewalls. XML Web services are not tied to a particular component technology or object-calling convention. As a result, programs written in any language, using any component model, and running on any operating system can access XML Web services. For more information, see XML Web Services and XML Web Service Clients Created Using ASP.NET
Each of these models can take full advantage of all ASP.NET features, as well as the power of the .NET Framework and .NET Framework common language runtime.
These features and how you can use them are outlined as follows.
The .NET Framework
.NET is a software framework that includes everything required for developing software for web services. It integrates presentation technologies, component technologies and data technologies on a single platform so as to enable users to develop Internet applications as easily as they do on desktop systems. The NET is a multi-language environment for building, deploying and running XML web services and applications. Intermediate Language (IL) allows for true cross language integration.
.NET Framework consists of three distinct technologies such as
· Common Language Runtime (CLR)
· Framework Base Classes
· User and program interfaces (ASP.NET and Windows forms)
Principal design features
Interoperability
Because interaction between new and older applications is commonly required, the .NET Framework provides means to access functionality that is implemented in programs that execute outside the .NET environment. Access to COM components is provided in the System.Runtime.InteropServices and System.EnterpriseServices namespaces of the framework; access to other functionality is provided using the P/Invoke feature.
Common Language
Runtime
Common Language Runtime (CLR) is a runtime environment in which programs written in C# and other .NET languages are executed. It also supports cross-languages interoperability.
The CLR provides a
number of services that include
· Loading and execution of programs.
· Memory isolation for applications.
· Verification of type safety.
· Compilation of IL into native executable code.
· Memory management (automatic garbage
· Collection).
· Interoperability with other systems.
· Managing exceptions and errors.
· Support for tasks such as debugging and
· Profiling.
Common Type System
(CTS)
The .NET framework provides multiple language support using the feature known as Common Type System that is built into the CLR. The CTS supports a variety of types and operations found in most programming languages and therefore calling one language from another does not require type conversions. C# language is specially designed for the .NET platform, but we can build .NET programs in a number of other languages including C++ and Visual Basic.
Common Language
Specification (CLS)
The Common Language Specification defines a set of rules that enables interoperability on the .NET platform. These rules serve as a guide to third-party compiler designers and library builders. The CLS is a subset of CTS and therefore the language supporting the CLS can use each other’s class libraries as if they are their own.
Microsoft
Intermediate Language (MSIL)
MSIL or simply IL is an instruction set into which all the .NET programs are compiled. It is similar to assembly language and contains instructions for loading, storing, initializing and calling methods. When we compile a C# or any program written in a CLS-compliant language, the source code is compiled into MSIL.
Framework Base
Classes
.NET supplies a library of base classes that we can use to implement applications quickly. Much of the functionality in the base framework classes resides in the vast namespace called System. We can use the base classes in the System namespace for many different tasks including
· Input/output Operations
· String handling
· Managing arrays, lists, maps, etc.
· Accessing files and file systems
· Security
· Windowing
· Database management
· Evaluation of mathematical functions
· Drawing
· Managing errors and exceptions
· Connecting to the Internet
Simplified
Deployment
Installation of computer software must be carefully managed to ensure that it does not interfere with previously installed software that it conforms to security requirements. The .NET framework includes design features and tools that help address these requirements.
Security
The design is meant to address some of the vulnerabilities, such as buffer overflows, that have been exploited by malicious software. Additionally, .NET provides a common security model for all applications.
Portability
The design of the .NET Framework allows it to theoretically be platform agnostic, and thus cross-platform compatible. That is, a program written to use the framework should run without change on any type of system for which the framework is implemented. Microsoft's commercial implementations of the framework cover Windows, Windows CE, and the Xbox 360. In addition, Microsoft submits the specifications for the Common Language Infrastructure (which includes the core class libraries, CommonType System, and the Common Intermediate Language), the C# language, and the C++/CLI language to both ECMA and the ISO, making them available as open standards. This makes it possible for third parties to create compatible implementations of the framework and its languages on other platforms.
ABOUT SQL SERVER
Microsoft SQL Server is an application used to create computer databases for the Microsoft Windows Family of server operating System. It provides an environment used to generate databases that can be accessed from workstations, the web, or other media such as personal digital assistant (PDA).
Microsoft SQL Server is probably the most accessible & the most documented enterprise database environment right now. This also means that you can learn it a little quicker than most other databases environments on the market.
SQL Server is a Relational Database Management system. It is the product of Microsoft. The version of SQL used by SQL Server is called Transact-SQL.
SQL Server is one such RDBMS that Support the client server architecture. It receives request from the clients for data and returns the result of the processed query. Many client software are available that are supported by SQL- Server. Transact-SQL is one such client that could be used only with SQL Server. All the SQL statements are submitted to the Transact-SQL which on receiving them passes it on to the SQL server. It also receives.
FEATURES OF SQL-SERVER
· Adding objects to the database
· New administrative options like moving tables between table
· Spaces.
· Many new DBMS packages.
· COPY option
· Smart SQL loader options
4. SYSTEM DESIGN
Introduction
Design in the first step in the development phase for any engineering products or system it may be defined as the process of applying various technique and principle for the purpose of defining a device process or a system in sufficient detail to permit its physical realization. When designing the system the points taken care are identify the data to be stored identify the reports to be generated. The potential objects are thoroughly analyzed class hierarchies and identified to check the system a behaving the way it has to there after the classes are individually tested and subsequently they are integrated to form the overall system the different phases are:
1. Input design: The screen in this project are designed using the VB.Net
2. Output design: The output design include providing various user friendly views and reports this are involves reports based on the user requirements
3. Database design: Database design is a process of creation of database. Proper database design is absolutely vital to the success of the database and any application using the database. Without designing correctly, the following problems can be introduced into the database. Data becomes redundant and a large burden is placed on the individual applications to keep the data in synchronization.
4.1.2 Use
Case Diagram
A use case is a methodology used in system analysis to identify, clarify, and organize system requirements. The use case is made up of a set of possible sequences of interactions between systems and users in a particular environment and related to a particular goal. It consists of a group of elements (for example, classes and interfaces) that can be used together in a way that will have an effect larger than the sum of the separate elements combined. The use case should contain all system activities that have significance to the users. A use case can be thought of as a collection of possible scenarios related to a particular goal, indeed, the use case and goal are sometimes considered to be synonymous.
A use case defines a goal-oriented set of interactions between external actors and the system under consideration. Actors are parties outside the system that interact with the system (UML 1999, pp. 2.113- 2.123). An actor may be a class of users, roles users can play, or other systems. Cockburn (1997) distinguishes between primary and secondary actors. A primary actor is one having a goal requiring the assistance of the system. A secondary actor is one from which the system needs assistance.
A use case is initiated by a user with a particular goal in mind, and completes successfully when that goal is satisfied. It describes the sequence of interactions between actors and the system necessary to deliver the service that satisfies the goal. It also includes possible variants of this sequence, e.g., alternative sequences that may also satisfy the goal, as well as sequences that may lead to failure to complete the service because of exceptional behavior, error handling, etc. The system is treated as a "black box", and the interactions with system, including system responses, are as perceived from outside the system.
Thus, use cases capture who (actor) does what (interaction) with the system, for what purpose (goal), without dealing with system internals. A complete set of use cases specifies all the different ways to use the system, and therefore defines all behavior required of the system, bounding the scope of the system.
Generally, use case steps are written in an easy-to-understand structured narrative using the vocabulary of the domain. This is engaging for users who can easily follow and validate the use cases, and the accessibility encourages users to be actively involved in defining the requirements.
Scenarios
A scenario is an instance of a use case, and represents a single path through the use case. Thus, one may construct a scenario for the main flow through the use case, and other scenarios for each possible variation of flow through the use case (e.g., triggered by options, error conditions, security breaches, etc.). Scenarios may be depicted using sequence diagrams.
Role of Use Cases in
Architecting
See the "Functional Requirements and Use Cases" white paper by Ruth Malan and Dana Bredemeyer, for the role of use cases in the architecting process. This paper also contains an updated version of Derek Coleman's use case template (Coleman, 1998) and a full use case bibliography.
Login Form Code
protected void btnLogin_Click(object
sender, EventArgs e)
{
SqlConnection con = new SqlConnection(Database.ConnectionString);
try
{
con.Open();
SqlCommand cmd = new SqlCommand("select fullname from users where uname = '"
+ txtUname.Text + "' and pwd = '"
+ txtPwd.Text + "'", con);
Object rv = cmd.ExecuteScalar();
if (rv == null)
lblMsg.Text = "Sorry! Invalid Login. Please Try Again!";
else
{
Session.Add("uname", txtUname.Text);
Session.Add("fullname", rv.ToString());
FormsAuthentication.RedirectFromLoginPage(txtUname.Text,
false);
}
}
catch (Exception
ex)
{
lblMsg.Text = "Error : " +
ex.Message;
}
finally
{
con.Close();
}
}
Client Code
protected void btnAdd_Click(object sender, EventArgs
e)
{
SqlConnection con = new SqlConnection(Database.ConnectionString);
try
{
con.Open();
SqlCommand cmd = new SqlCommand("select
isnull(max(clientid),0) + 1 from clients",con);
int clientid = (int)
cmd.ExecuteScalar();
cmd = new SqlCommand("insert into clients
values(@clientid,@name,@location,@email,@weburl)", con);
cmd.Parameters.Add("@clientid",
SqlDbType.Int).Value = clientid;
cmd.Parameters.Add("@name",
SqlDbType.VarChar, 20).Value = txtName.Text;
cmd.Parameters.Add("@location", SqlDbType.VarChar,
30).Value = txtLocation.Text;
cmd.Parameters.Add("@email",
SqlDbType.VarChar, 50).Value =
txtEmail.Text;
cmd.Parameters.Add("@weburl",
SqlDbType.VarChar, 30).Value = txtUrl.Text;
cmd.ExecuteNonQuery();
lblMsg.Text = "Client Added
Successfully. Client Id = " + clientid;
}
catch (Exception
ex)
{
lblMsg.Text = "Error : " +
ex.Message;
}
finally
{
con.Close();
}
}
Contract Code
protected void btnAdd_Click(object sender, EventArgs
e)
{
SqlConnection con = new SqlConnection(Database.ConnectionString);
try
{
con.Open();
SqlCommand
cmd = new SqlCommand("select
isnull(max(contrid),0) + 1 from contracts", con);
int contrid = (int)cmd.ExecuteScalar();
cmd = new SqlCommand("insert into contracts
values(@contrid,@clientid,@candid,@location,@jobdesc,@stdate,@enddate,@hrate,@candper)",
con);
cmd.Parameters.Add("@contrid",
SqlDbType.Int).Value = contrid;
cmd.Parameters.Add("@clientid",
SqlDbType.Int).Value =
ddlClient.SelectedItem.Value;
cmd.Parameters.Add("@candid",
SqlDbType.Int).Value =
ddlCandidate.SelectedItem.Value;
cmd.Parameters.Add("@location",
SqlDbType.VarChar, 30).Value =
txtLocation.Text;
cmd.Parameters.Add("@jobdesc",
SqlDbType.VarChar, 100).Value = txtJob.Text;
cmd.Parameters.Add("@stdate",
SqlDbType.DateTime).Value = txtStdate.Text;
cmd.Parameters.Add("@enddate",
SqlDbType.DateTime).Value = txtEnddate.Text;
cmd.Parameters.Add("@hrate",
SqlDbType.Int).Value = txtHrate.Text;
cmd.Parameters.Add("@candper",
SqlDbType.Int).Value = txtCandper.Text;
cmd.ExecuteNonQuery();
lblMsg.Text = "Contract Added
Successfully. Contract Id = "
+ contrid;
}
catch (Exception
ex)
{
lblMsg.Text = "Error : " +
ex.Message;
}
finally
{
con.Close();
}
7. TESTING AND IMPLIEMENTATION
Testing is a process to show the correctness of the program. Testing is needed to show completeness, to improve the quality of the software and to provide the maintenance aid. Some testing standards are therefore necessary reduce the testing costs and operation time. Testing software extends throughout the coding phase and it represents the ultimate review of configurations, design and coding. Based on the way the software reacts to these testing, we can decide whether the configuration that has been built is study or not. All components of an application are tested, as the failure to do so many results in a series of bugs after the software is put to use.
Black box
Testing
Black box testing also called behavioral testing, focuses on the functional requirements of software. This testing approach enables the software engineer to derive the input conditions that will fully exercise all requirements for a program. Black box testing attempts to find the errors like
· Incorrect or missing functions
· Interface errors
· Errors in data structures or external database access
· Behavior or performance errors
· Initialization and termination errors
· In Black box testing software is exercised over a full range of inputs and outputs are observed for correctness.
White box Testing
White box testing is also called Glass box testing is a test case design control; structure of the procedural design to derive test cases using White box testing method, the software engineer can derive the test cases that guarantee that all independent paths within the module have been exercised at least once. Exercise all logic decisions on their true or false sides. Execute all loops at their boundaries and within their operational bounds. Exercise internal data structure to ensure their validity.
· Software Testing Strategies
· Testing involves
· Unit testing
· Integration testing
· Acceptance testing
The first level of test is unit testing. The purpose of unit testing is to ensure that each program is fully tested.
The second step is integration testing. In this individual program units or programs are integrated and tested as a complete system to ensure that the software requirements are met.
Acceptance Testing involves planning and the execution of various types of tests in order to demonstrate that the implemented software system satisfies the requirements. Finally our project meets the requirements after going through all the levels of testing.
System Development Life Cycle (SDLC) Model
This is also known as Classic Life Cycle Model (or) Linear Sequential
Model (or) Waterfall Method. This model has the following activities.
1. System/Information Engineering and Modeling
As software is
always of a large system (or business), work begins by establishingthe
requirements for all system elements and then allocating some subset
of theserequirements to software. This system view is essential when the
software must interface with other elements such as hardware, people and other
resources. System is the basic and very critical requirement for the existence
of software in any entity. So if the system is not in place, the system
should be engineered and put in place. In some cases, to extract the
maximum output, the system should be re-engineered and spruced up. Once the
ideal system is engineered or tuned, the development team studies the software
requirement for the system.
2. Software Requirement Analysis
This process is also known as feasibility
study. In this phase, the development team visits the customer and
studies their system. They investigate the need for possible software automation
in the given system. By the end of the feasibility study, the team furnishes a
document that holds the different specific recommendations for the
candidate system. It also includes the personnel assignments, costs,
project schedule, target dates etc.... The requirement gathering process is
intensified and focussed specially on software. To understand the nature of the
program(s) to be built, the system engineer or "Analyst" must
understand the information domain for the software, as well as required function,
behavior, performance and interfacing. The essential purpose of this phase is
to find the need and to define the problem that needs to be solved .
3. System Analysis and Design
In this phase, the software
development process, the software's overall structure and its nuances are
defined. In terms of the client/server technology, the number of tiers needed
for the package architecture, the database design, the data structure design
etc... are all defined in this phase. A software development model is thus
created. Analysis and Design are very crucial in the whole
development cycle. Any glitch in the design phase could be very
expensive to solve in the later stage of the software development.
Much care is taken during this phase. The logical system of the product is
developed in this phase.
4. Code
Generation
The design must be translated into
a machine-readable form. The code generation step performs this task. If the
design is performed in a detailed manner, code generation can be accomplished
without much complication. Programming tools like compilers,
interpreters, debuggers etc... are used to generate the code.
Different high level programming languages like C, C++, Pascal, Java
are used for coding. With respect to the type of application, the right
programming language is chosen.
5.Testing
Once the code is generated, the
software program testing begins. Different testing methodologies are available
to unravel the bugs that were committed during the previous phases. Different
testing tools and methodologies are already available. Some companies build
their own testing tools that are tailor made for their own development
operations.
6.Maintenance
The software will definitely
undergo change once it is delivered to the customer. There can be many reasons
for this change to occur. Change could happen because of some unexpected input
values into the system. In addition, the changes in the system could directly
affect the software operations. The software should be developed to accommodate
changes that could happen during the post implementation period.
B. Prototyping Model
This is a cyclic version of the
linear model. In this model, once the requirement analysis is done and the
design for a prototype is made, the development process gets started. Once the
prototype is created, it is given to the customer for evaluation. The customer
tests the package and gives his/her feed back to the developer who refines the
product according to the customer's exact expectation. After a finite number of
iterations, the final software package is given to the customer. In this
methodology, the software is evolved as a result of periodic shuttling
of information between the customer and developer. This is the
most popular development model in the contemporary IT industry. Most
of the successful software products have been developed using this model - as
it is very difficult (even for a whiz kid!) to comprehend all the requirements
of a customer in one shot. There are many variations of this model skewed with
respect to the project management styles of the companies. New versions of a
software product evolve as a result of prototyping.
C. Rapid
Application Development (RAD) Model
The RAD model is a linear
sequential software development process that emphasizes an extremely short
development cycle. The RAD model is a "high speed" adaptation of the
linear sequential model in which rapid development is achieved by using a
component-based construction approach. Used primarily for information systems
applications, the RAD approach encompasses the following phases:
1. Business modeling
The information flow among business
functions is modeled in a way that answers the following questions:
What information drives the business process?
What information is generated?
Who generates it?
Where does the information go?
Who processes it?
2. Data
modeling
The information flow defined as
part of the business modeling phase is refined into a set of data objects that
are needed to support the business. The characteristic (called attributes) of
each object is identified and the relationships between these objects are
defined.
3. Process modeling
The data objects defined in the
data-modeling phase are transformed to achieve the information flow necessary
to implement a business function. Processing the descriptions are created for
adding, modifying, deleting, or retrieving a data object.
4. Application generation
The RAD model assumes the use of
the RAD tools like VB, VC++, Delphi etc... rather than creating software using
conventional third generation programming languages. The RAD model works to
reuse existing program components (when possible) or create reusable components
(when necessary). In all cases, automated tools are used to facilitate
construction of the software.
5. Testing and turnover
Since the RAD process emphasizes
reuse, many of the program components have already been tested. This minimizes
the testing and development time.
D. Component Assembly Model
Object technologies provide
the technical framework for a component-based process model for software
engineering. The object oriented paradigm emphasizes the creation of classes
that encapsulate both data and the algorithm that are used to manipulate the
data. If properly designed and implemented, object oriented classes are
reusable across different applications and computer based system architectures.
Component Assembly Model leads to software reusability. The integration/assembly
of the already existing software components accelerate the development process.
Nowadays many component libraries are available on the Internet. If the right
components are chosen, the integration aspect is made much simpler.
Risk Management:
This section provides an introduction to
the principles of risk management. The vocabulary of risk management is defined
in ISO Guide 73, "Risk management. Vocabulary."
In ideal risk management, a prioritization
process is followed whereby the risks with the greatest loss and the greatest probability of occurring are handled first, and risks with lower
probability of occurrence and lower loss are handled in descending order. In
practice the process can be very difficult, and balancing between risks with a
high probability of occurrence but lower loss versus a risk with high loss but
lower probability of occurrence can often be mishandled.
Intangible risk management identifies a
new type of a risk that has a 100% probability of occurring but is ignored by
the organization due to a lack of identification ability. For example, when
deficient knowledge is applied to a situation, a knowledge risk materializes. Relationship risk appears when
ineffective collaboration occurs. Process-engagement risk may be an issue when
ineffective operational procedures are applied. These risks directly reduce the
productivity of knowledge workers, decrease cost effectiveness, profitability,
service, quality, reputation, brand value, and earnings quality. Intangible
risk management allows risk management to create immediate value from the
identification and reduction of risks that reduce productivity.
Risk management also faces difficulties
in allocating resources. This is the idea of opportunity
cost. Resources spent on risk management
could have been spent on more profitable activities. Again, ideal risk
management minimizes spending and minimizes the negative effects of risks.
For the most part, these methods consist
of the following elements, performed, more or less, in the following order.
- identify,
characterize, and assess threats
- assess
the vulnerability of critical assets to specific threats
- determine
the risk (i.e. the expected consequences of specific types of attacks on
specific assets)
- identify
ways to reduce those risks
- prioritize
risk reduction measures based on a strategy
The chosen method of identifying risks may
depend on culture, industry practice and compliance. The identification methods
are formed by templates or the development of templates for identifying source,
problem or event. Common risk identification methods are:
- Objectives-based
risk identification Organizations and project teams have
objectives. Any event that may endanger achieving an objective partly or
completely is identified as risk.
- Scenario-based
risk identification In scenario analysis different
scenarios are created. The scenarios may be the alternative ways to
achieve an objective, or an analysis of the interaction of forces in, for
example, a market or battle. Any event that triggers an undesired scenario
alternative is identified as risk - see Futures Studies for methodology used
by Futurists.
- Taxonomy-based
risk identification The taxonomy in taxonomy-based risk identification
is a breakdown of possible risk sources. Based on the taxonomy and
knowledge of best practices, a questionnaire is compiled. The answers to
the questions reveal risks.[5]
- Common-risk
checking
In several industries, lists with known risks are available. Each risk in
the list can be checked for application to a particular situation.[6]
- Risk
charting This method combines the above approaches by listing
resources at risk, Threats to those resources Modifying Factors which may
increase or decrease the risk and Consequences it is wished to avoid.
Creating a matrix under these headings enables a variety
of approaches. One can begin with resources and consider the threats they
are exposed to and the consequences of each. Alternatively one can start
with the threats and examine which resources they would affect, or one can
begin with the consequences and determine which combination of threats and
resources would be involved to bring them about.
FUTURE ENHANCEMENT
This project is having a broad future scope as it can extend. This developed system has to good extend succeeded in rectifying the problems that are present in the manual system. The newly developed system consumes less processing time and reduces the manual work.
The goals have been achieved by the development of this project are:
It simplifies the operation.
The less Processing time increase the productivity.
Avoids errors by minimizing human intervention.
User friendly screens to enter the data and require the data.
Help message to operate the system.
Reduce more manpower requirements.
Reduce processing time.
Reduce use of stationary
8. CONCLUSION
This software is developed to overcome the problems in the present system. This software is a more user friendly. No need to visit company to company for job. Sitting in a single place we search number of companies and we can get the interviews by this we can save the time and money. It is successfully working integrated with the consents workflow product.
9. BIBLIOGRAPHY
1. Microsoft visual Basic.NET
By: Michael Halvorson
Step by Step
Publisher: Microsoft Press
2. Microsoft visual Basic.NET
By: Michael Halvorson
Deluxe learning Edition
Publisher: Microsoft Press
3. Learning VB.NET (2nd Edition)
By: Richards Blair et al
Publisher: Wrox Press
4. Microsoft SQL Server
By: Robert Vieira
Web Sites:
Comments
Post a Comment