3
THE DEVELOPMENT OF SERVER SOFTWARE TRACING & TESTING COLOR IMAGE COMPRESSION Holly Soper Mathematics & Computer Science Program IBM/InfoPrint Solutions Company; Boulder, CO; Software Engineering Internship, Summer 2007

THE DEVELOPMENT OF SERVER SOFTWARE TRACING & TESTING C O L O R IMAGE COMPRESSION Holly Soper

  • Upload
    vern

  • View
    21

  • Download
    0

Embed Size (px)

DESCRIPTION

THE DEVELOPMENT OF SERVER SOFTWARE TRACING & TESTING C O L O R IMAGE COMPRESSION Holly Soper Mathematics & Computer Science Program IBM/InfoPrint Solutions Company; Boulder, CO; Software Engineering Internship, Summer 2007. Specify traces to turn on in a file. Run software code. - PowerPoint PPT Presentation

Citation preview

Page 1: THE DEVELOPMENT OF SERVER SOFTWARE TRACING & TESTING  C O L O R  IMAGE COMPRESSION Holly Soper

THE DEVELOPMENT OF SERVER SOFTWARE TRACING&

TESTING COLOR IMAGE COMPRESSION

Holly SoperMathematics & Computer Science Program

IBM/InfoPrint Solutions Company; Boulder, CO; Software Engineering Internship, Summer 2007

Page 2: THE DEVELOPMENT OF SERVER SOFTWARE TRACING & TESTING  C O L O R  IMAGE COMPRESSION Holly Soper

Code continues to execute

DEVELOPMENT OF SERVER SOFTWARE TRACINGIBM has a product called InfoPrint ProcessDirector (IPPD), which is software that controls print production processes such as the assignment of workflow and print queue management.

Specify traces to turn on in a file

Run software code

Trace statements encountered in code

Is trace on?

Write trace line to a file

yes

Do not write trace

no

Developers

Customers

IPPD needed a new tracing system, a particular functionality that allows information to be logged about the software's execution. This is helpful for both developers (locate bugs and examine system execution) and customers (able to run traces and report to customer support).

The following shows the system flow of software that implements tracing:

The new trace system…• Centralized trace classes• Extensible (usable by extensions)• Object-specific trace classes• Trace groups identified by its full

name• Files named based on the time• Could support dynamic tracing• No more “debug” trace

The old trace system…• Not extensible (not usable by extensions)• Scattered trace classes• Random trace classes• Trace groups/subgroups identified by a single character• Expensive renaming of files• Must re-start server to change trace settings• Over 40% of all tracing was of the same “debug” trace

The Process• Research current IPPD tracing system• Prepare a design document• Facilitate a design review with developers• Code design implementation in Java within IPPD• Present education session explaining the new trace system

Page 3: THE DEVELOPMENT OF SERVER SOFTWARE TRACING & TESTING  C O L O R  IMAGE COMPRESSION Holly Soper

TESTING COLOR IMAGE COMPRESSION

IBM offers both software and hardware options for printing solutions, such as large industrial printers. Part of their development includes maintaining printer output integrity. The image transform team needs to ensure software quality in their deliverables to the control unit team.

For IBM's black and white printer, automated regression is performed on a set of test images and the output is compared to the “correct” output to make sure nothing has changed. The comparison is performed by computing the bounding box and coverage (number of black pixels) for the test output and comparing these values to the same values from the reference image. The job was to implement a similar comparison tool for color images that will enable automated regression for IBM's color printing products.

Bounding Box

Sheet side

Image

However, color is a bit more complicated than black and white, because color exists in multiple planes while black and white is just in one.

Peak Signal-to-Noise Ratio (PSNR)

Where MAXI is the maximum pixel value of the image and MSE is the mean squared error between two images

Translation?PSNR quantifies the average physical

difference between two images

MSE

MAXPSNR I10log20

The new tool uses the bounding box and peak signal-to-noise ratio (PSNR) algorithms (programmed in C) to detect deviations of the resulting image from the reference image.