       
Contact
Us
Staff
|
 |
Upgrading an
industry
NSF taps BU computer scientists to establish software standards
By David
J. Craig
Anyone who uses the Internet has considered clicking on the download
button of a Web site that offers free software, perhaps for viewing a
film online. But is it safe?
Installing antivirus software protects against hackers, but it is nearly
impossible to determine if a program is safe in other important respects,
according to Azer Bestavros, even if it comes from a trusted source. The
program could consume so much memory, for instance, that it will bog down
the computer, or it could contain bugs that will disrupt the machine much
like a virus.
"Programs made with good intentions can wreak havoc on your machine,"
says Bestavros, a CAS computer science associate professor and chairman
of the department. "That's why almost all end-user licensing agreements
for software say that you're using the product at your own risk. The companies
don't want to be liable for the damage the products can cause."
The problem occurs, he says, because the software industry is poorly regulated.
Software makers often release programs that work well on personal computers
with certain characteristics, but that act unreliably on other machines
or when they conflict with certain other programs.
The CAS computer science department recently received a $1.7 million grant
from the National Science Foundation (NSF) to work on a solution. Over
the next five years, researchers from the department's networking group
and its programming languages group will create ways to standardize many
aspects of software development. Bestavros and Assaf Kfoury, a CAS computer
science professor, are the project's principal investigators.
The grant was announced just days after the department won a $1.8 million
NSF grant to create a laboratory for investigating problems associated
with the video sensing technology used in security and monitoring systems
(see sidebar). The grants are the first department-wide research projects
in computer science at BU. Since 1999, the department has grown from 8
faculty members to 17, and has increased its annual external research
funding fourfold.
"Traditionally, our department has been very strong in theoretical
computer science, and our goal has been to establish ourselves in applied
research," says Bestavros. "The NSF grants recognize our strengths
in these areas, and really put us on the map as a department."
Researchers studying software safety and reliability will aim to create
a way to identify legitimate programs so users know for sure that they
will not deliver a virus. The second part of the project -- ensuring the
proper function of software -- is trickier.
To understand the researchers' challenge, it is helpful to picture the
Internet as one huge computer consisting of several layers of computer
programs. Common application programs such as Microsoft Word are built
upon a deeper layer of electronic codes called operating systems -- Windows,
for instance. Operating systems, in turn, rest on network operating systems,
such as TCP/IP, which perform even more basic functions.
Bestavros, who is a networking expert, uses the automobile as an analogy
to explain what often goes wrong in software development: imagine if cars
required drivers not only to operate gas and brake pedals and a steering
wheel, but had a lever to control the firing of spark plugs. Similarly,
Bestavros says, most computer programmers have access to too many details
of the underlying structure of the Internet, which needlessly complicates
their work and allows bugs to sneak into new designs.
By creating stricter, standardized parameters within which programmers
work, the BU researchers hope to dramatically reduce the number of mistakes
programmers can make.
"In addition to establishing guiding principles that will improve
the next generation of computer software, we also need to find safer ways
to continue using software that's already out there," says Kfoury,
whose expertise is the development of programming languages. A common
source of problems, he explains, is when different versions of the same
software try to communicate. One goal of the project is to develop methods
of testing large classes of software to discover how certain programs
can be made to communicate smoothly with one another.
According to Bestavros, a central challenge will be deciding how restrictive
to make the parameters in which programmers work. "Making software
safer essentially means limiting the freedom of programmers," he
says. "By working within limits, they obviously give up some things,
such as the ability to check some aspects of the software's safety while
they're designing it. There are a lot of compromises that will have to
be made, and I think that's where a lot of our work will be."
The $1.7 million NSF grant begins October 1 and will fund five graduate
research assistant positions and one postdoctoral researcher for five
years.
There's barely an inch of floor space in a modern airport without a security
camera trained on it. But are such cameras used to their potential?
Hardly, according to Azer Bestavros, a CAS computer science associate
professor and chairman of the department. Most security system cameras
are used the same way they were decades ago - to dispatch an image to
another location, where several images are monitored by a bleary-eyed
guard.
Bestavros says that in conjunction with the right computer technology,
however, cameras can perform sophisticated functions, such as watching
for types of movement that indicate suspicious activity, and then signaling
an alert.
The CAS computer science department recently was awarded a $1.8 million
grant from the National Science Foundation to build a sensorium, or a
laboratory for developing new ways to use video monitoring technology.
Over the next five years, the grant will fund the purchase of net-worked
video monitoring equipment as well as a full-time staff person to maintain
the equipment.
"We envision that most, if not all, public spaces in the future will
be equipped with video sensing devices," says Bestavros. "Already
they're in malls, parks, and schools. And they're not used simply for
security, but for monitoring patients in a hospital or for seeing when
somebody is lost in a park. But they're not used to do very intelligent
things."
Intelligent things? Well, think of a camera feeding data into a computer
that then calculates what types of movements typically occur in the camera's
range of vision. In a hospital registration area, for instance, most moving
objects might come in through a particular door, approach a counter, and
leave in the same direction.
"A computer can be programmed to recognize when the camera sees a
movement that can't easily be classified, and then maybe a red light will
go on, telling a security guard at least to look at a particular monitor,"
Bestavros says. The new facility also could be used to investigate the
best way for several cameras to work together to track an individual's
movement through a building, or to develop a monitoring system that can
find a person based on identifying characteristics such as what the person
is wearing. Bestavros says researchers in the computer science department
already have completed successful pilot studies in some of these areas.
|
 |