Abc7 Xyz’s Updates

ABSTRACT SAS ® software provides a complete set of application devel opment tools for building st and-alone, client-server, and Internet-enabled applications, and SAS Institut e provides excellent training in usi ng their software. But making it easy to b

ABSTRACT
SAS
®
software provides a complete set of application devel
opment tools for building st
and-alone, client-server, and
Internet-enabled applications, and SAS Institut
e provides excellent training in usi
ng their software. But making it easy
to build applications can be a two-edged sword. Not only
can developers build powerful,
sophisticated applications,
but they can also build applications t
hat frustrate users, waste computer re
sources, and damage the
credibility of both
the developer and SAS software. Formal testing will help
prevent bad applications fr
om being released, but SAS
Institute offers little guidance related to
software testing. For those unfamiliar with
the topic, this paper can serve as a
primer or first step in learning about a more formal,
rigorous approach to software testing. The paper does not
address any specific SAS product and may be appropria
te for even experienced application developers.
INTRODUCTION
With SAS and Java, talented developers can do incr
edible, wonderful things. AppDev Studio

provides a full suite of
application development tools for bu
ilding client-server and Internet-enabled applications. With Base SAS
software,
SAS/Connect
®
, and SAS/Share
®
as a foundation, developers can easily bu
ild a ‘thick-client’ application using
SAS/AF
®
and SAS/EIS
®
to access data and share information across a
LAN. For ‘thin-client’ Internet-enabled
applications SAS provides web/AF

, web/EIS

, SAS/IntrNet
®
, and SAS
®
Integration Technologies.
In the hands of less talented developers,
these same tools can still do incredi
ble things but not always wonderful
things. Everyone has used poorly-designed, clumsy, frustrat
ing applications that are onl
y barely able to get the job
done. This is not an indictment of
entry-level developers—everyone was a rookie
at one time, and often it’s not their
fault anyway. This author believes that the finger is bette
r pointed at those responsible
for training the entry-level
developer and, even more so, at those responsible for over
seeing the testing and release of their work. In many
cases, however, the problem may be a systemic or sc
heduling failure—overly aggressive schedules to document
requirement, design, build, test, and release software
may leave too little time for adequate testing and force
developers to release code that isn’t ready.
Assuming that a project has fully collected and clearly
documented its business and tec
hnical requirements (which
might be a stretch, but let’s pretend),
a primary cause of failed application so
ftware development is lack of a formal
requirements-based testing process.
“Formal requirements-based testing”
may conjure up an image of a lengthy,
involved, and minutely detailed process but
it doesn’t necessarily have to be like that, although in organizations with
mature software engineering practices or at CMM level 3 it
probably is. In many if not most organizations, formal
software testing can easily be tailored to the applicat
ion being examined and has only two real prerequisites.

Business requirements and design documents
that allow development of a test plan

People who understanding how to write and carry out a test plan
Collecting and documenting business require
ments is outside the scope of this
paper, so here we will say only that
clear, concise, and measurable requirem
ents are essential not only to developi
ng the application it
self and creating a
test plan but also gauging if the final
product meets the users’ needs.
James Whittaker, Chair of the software engineering program
at the Florida Institute of
Technology, has noted that
despite the countless hours that go in
to code development and seemingly endl
ess code reviews, bugs and defects
still are found in the production re
lease. Why? A big part of his answer
is a lack of understanding of software testing
and, consequently, inadequate software testi
ng processes and procedures. The material in this paper may begin to
remedy this situation by presenting some c
oncepts and terms related to software testing.
In this paper, the terms application, program, and system
are used rather interchangeably to describe ‘applications
software’, which is “a program or group of progr
ams designed for end users to accomplish some task

g processes and procedures. The material in this paper may begin to

remedy this situation by presenting some c

oncepts and terms related to software testing.

In this paper, the terms application, program, and system

are used rather interchangeably to describe ‘applications

software’, which is “a program or group of progr

ams designed for end users to accomplish some task

g processes and procedures. The material in this paper may begin to

remedy this situation by presenting some c

oncepts and terms related to software testing.

In this paper, the terms application, program, and system

are used rather interchangeably to describe ‘applications

software’, which is “a program or group of progr

ams designed for end users to accomplish some task

g processes and procedures. The material in this paper may begin to

remedy this situation by presenting some c

oncepts and terms related to software testing.

In this paper, the terms application, program, and system

are used rather interchangeably to describe ‘applications

software’, which is “a program or group of progr

ams designed for end users to accomplish some task

g processes and procedures. The material in this paper may begin to

remedy this situation by presenting some c

oncepts and terms related to software testing.

In this paper, the terms application, program, and system

are used rather interchangeably to describe ‘applications

software’, which is “a program or group of progr

ams designed for end users to accomplish some task

g processes and procedures. The material in this paper may begin to

remedy this situation by presenting some c

oncepts and terms related to software testing.

In this paper, the terms application, program, and system

are used rather interchangeably to describe ‘applications

software’, which is “a program or group of progr

ams designed for end users to accomplish some task

g processes and procedures. The material in this paper may begin to

remedy this situation by presenting some c

oncepts and terms related to software testing.

In this paper, the terms application, program, and system

are used rather interchangeably to describe ‘applications

software’, which is “a program or group of progr

ams designed for end users to accomplish some task

g processes and procedures. The material in this paper may begin to

remedy this situation by presenting some c

oncepts and terms related to software testing.

In this paper, the terms application, program, and system

are used rather interchangeably to describe ‘applications

software’, which is “a program or group of progr

ams designed for end users to accomplish some task

g processes and procedures. The material in this paper may begin to

remedy this situation by presenting some c

oncepts and terms related to software testing.

In this paper, the terms application, program, and system

are used rather interchangeably to describe ‘applications

software’, which is “a program or group of progr

ams designed for end users to accomplish some task

g processes and procedures. The material in this paper may begin to
remedy this situation by presenting some c
oncepts and terms related to software testing.
In this paper, the terms application, program, and system
are used rather interchangeably to describe ‘applications
software’, which is “a program or group of progr
ams designed for end users to accomplish some task

g processes and procedures. The material in this paper may begin to

remedy this situation by presenting some c

oncepts and terms related to software testing.

In this paper, the terms application, program, and system

are used rather interchangeably to describe ‘applications

software’, which is “a program or group of progr

ams designed for end users to accomplish some task

g processes and procedures. The material in this paper may begin to

remedy this situation by presenting some c

oncepts and terms related to software testing.

In this paper, the terms application, program, and system

are used rather interchangeably to describe ‘applications

software’, which is “a program or group of progr

ams designed for end users to accomplish some task

g processes and procedures. The material in this paper may begin to

remedy this situation by presenting some c

oncepts and terms related to software testing.

In this paper, the terms application, program, and system

are used rather interchangeably to describe ‘applications

software’, which is “a program or group of progr

ams designed for end users to accomplish some task

  • Abc7 Xyz