Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

5.3. Feasibility Study

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 24

E.NO.

-033132340

5.3. FEASIBILITY STUDY


Not everything imaginable as it is feasible, appear of not to even in

software, Feasibility project

evanescent is the

may

outsiders. or not a

determination doing. On

whether contrary,

is

worth

the

software

feasibility has seven solid dimensions as below: 1.Technical feasibility. 2.Operational feasibility. 3.Economic feasibility. 4.Social feasibility. 5.Management feasibility. 6.Legal feasibility. 7.Time feasibility.

VISUAL BASIC .NET Visual basic .Net is an award-winning suite of Rapid Application Development (RAD) tools for building enterprise-class applications that give end users a highly visual interface to the database. It enables to: -

103

E.NO. -033132340

Deploy

applications

in

three-tier

or

two-tier

configurations. Produce efficient, scalable applications. Increase the effectiveness of new and experienced

developers. Build large, consistent, maintainable applications

quickly. TYPES OF APPLICATION ARCHITECTURE IN VB.NET: Applications are developed to support organizations in

their business operations. The Visual Basic.Net supports three types of architecture. (i) Single-tier architecture (ii) Two-tier architecture (iii) Three-tier architecture

(i) Single-tier Architecture: In single-tier architecture a single executable file

handles all the functions relating to the user, business and data service layers. This type of application is

called monolithic application.

104

E.NO. -033132340

MONOLITHIC APPLICATION USER SERVICES BUSINESS SERVICES DATA SERVICES

(ii). Two-tier Architecture: The two-tier architecture divides an application into two components: (a) Client: Implements the users interface. (b) Server: stores data.

CLIENT
USER TIER BUSINESS LOGIC

SERVER
DATA TIER

(iii) Three-tier Architecture: In three-tier architecture all the three layers reside

separately, either on the same machine or on different machine. The user interface interacts with business logic. The business logic validates the data sent by the

interfaces and forwards it to the database if it conforms to the requirements.


105

E.NO. -033132340

CLIENT
USER SERVICES

BUSINESSLOGIC
BUSINESS SERVICES

DATA STORE
DATA SERVICES

FEATURES OF VISUAL BASIC.NET: There are following features introduced in VB.NET (i).Inheritance (ii).Constructor and destructor (iii).Overloading (iv).Overriding (v).Structured exception handling (vi).Multithreading

(i).Inheritance: Inheritance is the ability of a class to derive its characteristics from an existing class. VB.NET provides the Inheritance keyword to inherit the characteristics of a class parantclass into another class derived

class. (ii).Constructor and destructor: 106

E.NO. -033132340

A constructor is a special type of method that invoked when we create a new instance of a class. A constructor is used to initialize the member of the class. While the destructor is invoked when an object is

destroyed. A destructor releases the resources used by an object. (iii).Overloading: Overloading enables methods to be defined with the same name but different parameters. VB.NET provides a keyword overloads for this purpose.

(iv).Overriding: Overriding is the capability of a derived class to

overrides the characteristics of the parent class.VB.NET provides a keyword override for this purpose. (v).Structures exception handling: Exceptions are errors that generated at run time. VB.Net support structure blocks exception of code handling filter that for consists the of

protected

and

possible

exceptions that can be raised by the program.

(vi). Multithreading: 107

E.NO. -033132340

Multithreading enables an application to contain one or more threads that can share the worked in an application by executing at a time.

(E).LAN: Local Area Networks, generally called LANs, are privately owned networks within a single building or campus of up to a few kilometers inside. They are widely used to connect personal computers and workstations in company offices and factories to share resources (e.g., printers) and exchange information. LANs are distinguished from other kinds of networks by three characteristics: (i) Their size (ii) Their transmission technology and (iii) Their topology

Traditional LANs run at speeds of 10 to 100 Mbps, have low delay (tens of microseconds), and make very few errors. Newer LANs may operate at higher speeds, up to hundreds of Mbps.

(F).UTP: 108

E.NO. -033132340

UTP

stands

for in

Unshielded several

Twisted varieties,

Pair. two

Twisted of which

pair are

cabling

comes

important for computer networks.

Category 3 twisted pair consists of two insulated wires gently together. Four such pairs are typically grouped

together in a plastic sheath for protection and to keep the eight wires together. This scheme allowed up to four regular telephones or to multilane telephones in each

office to connect the telephone company equipment in the closet.

Category 5 twisted pair is similar to category 3 twisted pair, but with more twists per centimeter and Teflon insulation, which results in less cross talk and a

better quality signal over long distances. Both of these wiring types are often referred to as UTP.

(G). TCP/IP Protocol: Transmission Control Protocol (TCP)/Internet Protocol (IP) is a set of protocols developed to allow computers of all
109

E.NO. -033132340

sizes from different vendors, running different operating systems, to communicate or to share resources across the networks. This was designed to provide a reliable end-toend byte stream over an unreliable inter networks. TCP is a connection-oriented protocol while IP is a

connectionless protocol.

5.7.

CODE EFFICIENCY

Every step has been considered in order to achieve the code efficiency. Visual Basic .Net has been used in

order to achieve the high degree of optimality of code. It is an object oriented GUI tool that provides the facility of the event driven programming as well as supports object oriented programming (oops).
110

The

event

driven

and

oops

E.NO. -033132340

concept reduce the code. SQL meets only the target (what has to be done) to be specified and it does not need the steps (how) to be followed to achieve the target. The data retrieved is done by SQL engine of the RDBMS, which is very efficient, and it increases the efficiency of the application as well. As far as user interface design of the application is concerned, object oriented paradigm has been applied which reduces the lengthy codification and achieve the inheritance, which further enhance the code efficiency.

111

E.NO. -033132340

5.8. CODE OPTIMAZATION

The

application

has

been in

designed which the

using functions

two-tier of the

client/server

technology

application segregated between the two tiers i.e. the Back End and the Front End. Every type of data security,

constraints and validation rules has been applied.

At

the

Back

End

Database

itself,

which

is

as

per

the

codes rules, due to which less codification is needed at the Front End user interface level? Due to this approach, it is possible to optimize the codes so that it can take less memory to execute and makes execution fast.

Again

PL/SQL

programming

language

has

been

used

which

provides the facility of embedded SQL. The data retrieval power of SQL is well known. Since PL/SQL is the product of Oracle itself, which on runs faster than any other, Thus

programming

language

Oracle

RDBMS

platform.

processing power of PL/SQL is unmatched. The combination of PL/SQL and SQL is excellent as far as processing time
112

E.NO. -033132340

and memory is concerned. Thus it reduces the requirement of storage as well as processor and the resultant code optimization or efficiency is very high.

113

E.NO. -033132340

5.10. SOFTWARE TESTING


5.10.1. Testing Objectives: (i) Testing is a process of executing a program with the intent of finding an error. (ii) A good test case is one that has a high probability of finding an undiscovered error. (iii) A successful test is one that uncovers as yet

undiscovered error.

5.10.2. Testing Techniques: Once source code has been generated, software must be

tested to uncover (and correct) as many errors as possible before delivery to our customer. Our goal is to design a series of test cases that have a high likelihood of

finding errors. Software is tested from two different perspectives: (a) Internal program logic is exercised using White Box test case design techniques.

114

E.NO. -033132340

(b) Software requirements are exercised using Black box test case design techniques. In both cases, the

intent is to find the maximum number of errors with the minimum amount of effort and time.

(a).White Box Testing:


White box testing sometimes called Glass box testing, is a test case design method that uses the control structure of the procedural design to derive test cases. Using white

box testing methods, the software engineer can derive test cases that 1.Guarantee that all independent paths within a module have been exercised at least once. 2.Exercise all logical decisions on their true and false sides. 3.Exercise validity. A reasonable question might be posed at this juncture. Why spend time and energy worrying about (and testing) logical minutiae when we might
115

internal

data

structures

to

ensure

their

better

expend

effort

E.NO. -033132340

ensuring that program requirements have been met?

State

another way, why dont we spend all of our energy on black box tests?

Logic

errors

and

incorrect

assumptions

are

inversely

proportional to the probability that a program path will be executed. Errors tend to creep into our work when we

design and implement function, conditions, or control that is out of the mainstream.

We often believe that a logical path is not likely to be executed when, in fact, it may be executed on a regular basis.

Typographical

errors

are

random.

When

program

is

translated into programming language source code, it is likely that some typing errors will occur. Many will be uncovered by syntax and type checking mechanisms, but

others may go undetected until testing begins. White-Box Testing is far more likely to uncover them.

116

E.NO. -033132340

(b). Black- Box Testing:Black Box testing, also called Behavioral Testing, focuses on the functional requirements of the software. That is,

black box testing enables the software engineer to derive sets of input conditions that will fully exercise all

functional requirements for a program.

Black Box testing

is not an alternative to white-box techniques. Rather, it is a complementary approach that is likely to uncover a different class of errors than white-box methods.

Black Box testing attempts to find errors in the following categories: 1.Incorrect or missing functions. 2.Interface errors. 3.Errors access. 4.Behavior or performance errors. 5.Initialization and termination errors. in data structures or external data base

Unlike White-Box testing, which is performed early in the testing process, black box testing tends to be applied
117

E.NO. -033132340

during later stages of testing. purposely disregards control

Because black box testing structure, attention is

focused on the information domain. answer the following questions: -

Tests are designed to

1.How is functional validity tested? 2.How is system behavior and performance tested? 3.What classes of input will make good test cases? 4.Is the system particularly sensitive to certain input values? 5.How are the boundaries of a data class isolated? 6.What data rates and data volume can the system

tolerate? 7.What effect will specific combinations of data have on system operation?

5.10.3. Testing Strategies: System engineering defines the role of software and leads to software requirements analysis where the information domain, function, behavior, performance, constraints, and validation criteria for software are established. Moving inward along the spiral, we come to design and finally to coding. To develop computer
118

software,

we

spiral

inward

E.NO. -033132340

along streamlines that decrease the level of abstraction on each turn. A strategy for software testing may also be viewed in the context of the spiral (shown in figure): -

FIGURE: -TESTING STRATEGY 1. Unit Testing: Unit testing begins at the vertex of the spiral and

concentrates on each unit (i.e. component) of the software as implemented on the in source code. of It focuses verification design the

effort

smallest

unit

software

software component or module. The unit test is white-box oriented, and the step can be conducted in parallel for multiple components.
119

E.NO. -033132340

Unit Test Considerations: Interface Local data structures Boundary conditions Independent paths Error handling paths

2. Integration Testing: In this testing of a strategy the it focus is on design and

construction testing is

software

architecture. for

Integration of

systematic

technique

construction

program structure while at the same time conducting tests to uncover errors associated with interfacing. The

objective is to take unit tested components and build a program structure that has been dictated by design.

Components of Integration Testing: (a) Top-down Integration: 120

E.NO. -033132340

Top-down integration testing is an incremental approach to construction of program structure. Modules are integrated by moving downward through the control hierarchy,

beginning with the main control (main program). Modules subordinate control (and ultimately subordinate) into the to the main in

module

are

incorporated

structure

either a depth-first or breadth-first manner.

b) Bottom-up Integration: Bottom-up integration testing, as its name implies, begins construction and testing with atomic modules (i.e.

components at the lowest levels in the program structure). Because components are integrated from the bottom up,

processing required for components subordinate to a given level is always available and the need for stubs is

eliminated.

c) Regression Testing: -

121

E.NO. -033132340

It is the re-execution of some subset of tests that have already been conducted to ensure that changes have not propagated unintended side effects.

d) Smoke Testing: Smoke testing is an integration testing approach that is commonly used when shrink-wrapped software products are being developed. It is designed as pacing mechanism for time-critical projects, allowing the software team to

assess its project on a frequent basis. 4. Validation Testing: Validation definition can is be that defined in many ways but when a simple

validation

succeeds

software

functions in a manner that can be reasonably expected by the customer. a) Validation Test Criteria: Two possible Conditions

exist: 1) The function or performance characteristics

conform to specification and are accepted 2) A deviation from specification is uncovered and a

deficiency list is created.


122

E.NO. -033132340

It is often necessary to negotiate with the customer to establish a method for resolving deficiencies.

b) Configuration Review: An important element of the validation process is a

configuration review. The configuration review, sometimes called an audit.

c) Alpha Testing: A customer conducts tests the alpha test at the in developers controlled

site.

Alpha

are

conducted

environments.

d) Beta Testing: The beta test is conducted at one or more customer sites by the end-user of the Software. The beta test is a live application of the software in an environment that cannot be controlled by the developer.

1. In

System Testing: System Testing the software


123

and

other

elements

are

tested as a whole. System testing is actually a series of

E.NO. -033132340

different tests whose primary purpose is to fully exercise the computer-based system. Although each test has a

different purpose, all work to verify the system elements have been properly integrated and perform allocated

functions. To test computer software, we spiral out along streamlines that broaden the scope of testing with each turn.

5.17. BIBLIOGRAPHY
Books: 1. Press Oracle: Oracle Complete Reference Book. 2. Bayross, Ivan: Introduction to Oracle-9i, BPB Publication, New Delhi 3. Matthew Reynolds: Beginning visual Basic .NET
124

E.NO. -033132340

4. Andrew Troelsen: Visual Basic .NET and .NET platform 5. Raja Raman: System Analysis and Design. 6. Canter: System Analysis and Design. Magazines & Periodicals: 1.PC Quest 2.Data Quest Web-sites: 1. http://msdn.microsoft.com/vbasic

125

E.NO. -033132340

5.18. GLOSSORY
IT Information Technology PERT- Program Evaluation & Review Technique GANTTAC- Air-condition WORM- Write Once Read Many SVGA- Super Video-Graphic Adapter GB- Giga Byte MB- Mega Byte RAM- Random Access Memory NT- New Technology SQL- Structured Query Language PL-Programming Language CPM-Critical Path Method GUI-Graphical User Interface LOC-Line of Code COCOMO-Constructive Cost Model MBPS-Mega Byte Per Second UTP-Unshielded Twisted Pair LAN-Local Area Network TCP-Transmission Control Protocol IP-Internet Protocol NIC-Network Interface Card

126

You might also like