This document defines requirements for a dataflow diagraming tool, called "dftool". The tool provides functionality for drawing and editing dataflow diagrams (DFDs). It also supports the translation of DFDs to and from their textual representation in a formal modeling and specification language (FMSL).
Some basic requirements for dftool are presented in the users manual for a previous implementation of RSL support tools. Sections 7 and 8 of that manual discuss features of the dataflow editing.
The set of tools described in the old manual were implemented in C and C++ to run in an X Windows environment, and are not portable to other platforms. A key objective of the current dftool project is to design and implement a multi- platform version of the dftool in Java. Initially, the Java-based dftool will be a stand-alone application. At some later point, it may be integrated into an Eclipse environment for FMSL.
The requirements presented here refine and extend the earlier tool's features. Particular new features of note are the following:
The problems to be solved stem from the inadequacies of the earlier version of the dataflow tool, which are:
The primary end users are students in Cal Poly undergraduate software engineering classes, specifically CSC 307, 308, and 309.
The primary developer for January through June 2006 is Cal Poly senior project
student Tim Ober, supervised by Gene Fisher. Ober will do design and
implementation, Fisher will do requirements.
1.3. Operational Setting
The stand-alone version of dftool is designed to run on any major computing platform, in particular Microsoft Windows, Apple Mac OSX, and Linux. The necessary Java support must be installed on the running platform.
As a component of an integrated development environment, the most likely
setting will be as a plug-in to the Eclipse IDE. These requirements do not
address this aspect of dftool integration.
1.4. Impact Analysis
The desired positive impacts are these:
Regarding the increased use of DFDs in courses, this is desirable insofar as DFD use is appropriate to the class projects and curriculum. The "insofar as" qualification means that DFDs are not necessarily a major part of the current course curricula, however their use can be beneficial in many cases. Having a graphical tool for DFD editing is likely to enhance their utility, in the same way that other kinds of software support tools enhance the utility of the technologies that the tools support.
Potential negative impacts are: