Temperature Conversion Application

a Worked Example

 

Many times in the Software Engineering field, process is emphasized without regard to what was done. The purpose of this article is to outline a repeatable process and show what tools and techniques were used to capture and document the system requirements, analyzing the requirements. Then develop an application, test it, and deploy it.

This process has been tailored to fit the needs of this simple application and the limited resources used to produce the new product. Development of substantial projects will take a lot more resources. The processes that are necessary to ensure a quality product will be incorporated into the software engineering process. Where large diverse groups are used to develop software, an overarching process capture method is necessary to ensure repeatability.

For the sake of this example, the rudimentary process events are listed along with the a narrative of methods used to satisfy the requirements of the system development. This example provides a template for using various tools in the software engineering process.

Phase I Requirements

There are several types of requirements that can be gathered during this phase. The table below contains a sample of the type of requirements that can be collected. Beside each type of requirement, an indication as to whether they are included in this example is indicated.

Environmental Requirements None
Regulatory Requirements None
Functional Requirements TCA Functional Requirements
Software Requirements TCA Program Requirements
Testing Requirements None

During this phase, developing problem statements that describe specific problems that the requirements are satisfying, augment the requirements while the subject mater experts are available and engaged in the process of defining the system is highly encouraged. When they will be reviewed and analyzed during the analysis phase

The tool that was used during this example was an evaluation copy of the RMTRAK program. It is a low cost document driven tool that captures requirements into an authoritative database. Keeps track of changes and provides many reporting tools to develop other products for inclusion in other phases of the project.

The tool is capable of much more. The user can create custom report or can get the manufacture to create reports for them.

Phase II Analysis

The analysis phase will evaluate the requirements and any problem statements to develop a use case model that will be used to develop the system specifications. Other documents can be created during this phase to map requirements to capabilities that already exist either commercially or as legacy applications.

During this project Visual Paradigm (Community Edition) was used to develop use case and model the capabilities of the Temperature Conversion Application.

Reports from Visual Paradigm (Community Edition)
TCA Use Case Diagram Summary
TCA Sequence Diagram Summary
TCA Activity Diagram Summary

The tool is capable of producing other diagrams and models as well as doing textual analysis. Additionally, the tool can be fitted with a wide range of Integrated Development Environment (IDE) plug-ins to actually generate the source code for the project.

The tool is capable of sharing data from with other tools using the XMI formatted data exchange files.

Phase III Coding

The tool used in the analysis phase is fully capable of generating the code in Java. The source code for release 1.0-00 is written in JavaScript. The tool that was used does not generate JavaScript. It will generate JAVA code natively, which can be used in servlets and Java Server Pages as supporting libraries. The tool does not code the entire application but does a fair job of generating code for the business logic of the system.

The user interface was written in HTML. It could have been written entirely in JavaScript, but the simplicity of the application did not warrant it.

Phase IV Testing

During this phase, the features and functions of the application are traced back to the requirements. Each element of the system requirements are evaluated for completeness and functionality in the system.

CA Test Specifications

Software relationships

Phase V Deployment

The core of the application was written in JavaScript and was deployed as a source file to the web server. The HTML coded page was deployed to the same web server directory. The Temperature Conversion Application is an integrated page with an explanation of the science behind the the temperature scale conversion.

M. Kevin Jackson, Software Engineering Services
back