SMERFS


Note: For more details on SMERFS, click www.slingcode.com/smerfs




  SMERFS (Statistical Modeling and Estimation of Software Reliability

Functions) is a program for estimating and predicting the reliability

of software during the testing phase. It uses failure count information

to make these predictions.



  To run SMERFS from this control panel, the user supplies five pieces

of information.  These are the name of the history file, the name of

the assumptions file, the name of the input data file, the name of the

output data file, and the type of data contained in the input data file.



  The history file is an output file that will be created by SMERFS.  It

is a trace file that contains all of the user input and SMERFS outputs

for a particular run so that the user can go back and look at the run

at a later time.  USERS WILL USUALLY WANT TO PRODUCE A HISTORY FILE,

SINCE INFORMATION SUCH AS MEAN-TIME-TO-FAILURE PLOTS ARE SAVED IN THIS

FILE.



  The assumptions file is an input to SMERFS which is used when the

user queries SMERFS about the characteristics of a particular software

reliability model.  SMERFS uses the contents of this assumptions file

to reply to the user's query.



  The input data file contains the failure history data on which SMERFS

will actually operate to produce the reliability estimates and predictions.

The user must also specify the type of data contained in the input data

file by clicking the appropriate radio button.  If the selected data type

does not correspond to the type of data actually in the input file, the

estimates and predictions made by SMERFS will not be valid.



  The output data file is a file that the user can specify to which

SMERFS will write failure history data created or edited by the user

during the current SMERFS session.  This is different from the history

file described above, since the history file is a trace file which re-

cords all user input and SMERFS responses.  The output data file is

actually a failure history file, created by the user, which can be

used in subsequent sessions as an input data file.



  The user can specify these files in the text entry areas.  If they are

specified as file names without a path name in front of them, SMERFS will

assume that these files are in the current directory.  These files may

also be specified as FULLY QUALIFIED file names if the user wants to make

use of files that are in directories other than the current one.  The

character length limit for file names is 128 characters in this im-

plementation.  Note the following:



	1.	The user can elect to not produce a history file by

		clicking the "none" button associated with the history

		file name text box.



	2.	The user can elect to input failure history data from

		the keyboard rather than reading it in from an input

		data file.  This is done by clicking the "keybd" button

		associated with the input data file name text box.  If

		keyboard input is selected, the user must still specify

		the type of failure data to be input by clicking one of

		the four "data type" radio buttons described above.

		

		IN THIS IMPLEMENTATION OF THE SMERFS CONTROL PANEL, KEY-

		BOARD INPUT AND DATA FILE INPUT ARE MUTUALLY EXCLUSIVE

		OPTIONS.



	3.	The user can choose to specify no output data file by

		clicking the "none" button associated with the output

		data file name text box.  IT SHOULD BE NOTED THAT IT

		IS POSSIBLE TO SPECIFY KEYBOARD INPUT AND NO OUTPUT

		FILE.  THIS IS GENERALLY UNWISE, HOWEVER, SINCE ANY

		DATA CREATED BY THE USER IN THIS SITUATION WILL NOT

		BE SAVED FOR FUTURE USE.



  If users want to change directories, they click the "Change Directory"

button.  A dialog box containing a text entry area, an "OK" button, and

a "CANCEL" button will appear.  The user will then enter the name of the

directory to change to in the text entry area.  Pressing the "OK" button

will cause a directory change to that directory, while pressing "CANCEL"

will cancel the operation and leave the user in the directory in which he

started.  If the user enters the name of a non-existent directory or the

name of a directory which he cannot access, error message boxes with the

appropriate error messages will appear.  When a successful directory change

has been made, the new directory name will appear in the "Current Directory"

text window in the main control panel.  Directory names are limited to

128 characters.



  In this implementation, users need to run SMERFS from a directory in

which they have write permission.  This is because SMERFS creates tempor-

ary history files in the current directory, even if the user has requested

that no history files be produced.  The temporary history files are removed

at the end of the current SMERFS session.  However, SMERFS must be able to

create these temporary files during the session.  



  The following table gives a list of assumption files, data sets, and

sample SMERFS sessions that are available for the user to inspect or use

or use while running SMERFS.







			        DATA SET NAME



		interval1.dat	interval2.dat	cpudata1.dat



	=========================================================



Assumptions

File:		smerfs3.assum	smerfs3.assum	smerfs3.assum



Sample

Scenario:	interval1.his	interval2.his	cpudata1.his





The assumptions file is used to actually run the model.  The sample

scenario is a file that the user can view to see what SMERFS actually

looks like when it's running.  Interval1.dat and interval2.dat are

"test interval length/failure count" type of data,, while "cpudata1.dat"

is of the type "Execution time between failures."  All of these files

are available in the ~cs577/CASE/reliability directory.



  For more information on SMERFS, consult the SMERFS user's guide.  This

is a technical report available from the Naval Surface Weapons Center,

NSWC TR 84-373, "Statistical Modeling and Estimation of Reliability

Functions for Software (SMERFS) User's Guide." (Revision 3 published in

1993.)  For more information on software reliability modeling in general,

refer to Chapter 4 "Software Reliability Modeling Survey" of this

Handbook (Handbook of Software Reliability Engineering), as well as

"Software Reliability: Measurement, Prediction, Application" by John

Musa, Anthony Iannino, and Kazu Okumoto, also published by McGraw-Hill

in 1987.  In addition, The IEEE has a committee devoted to Software

Reliability Engineering which sponsor annual International Symposium

on Software Reliability Engineering (ISSRE).