Srs For Graphics Editor
Srs For Graphics Editor
Specification
for
Graphics Editor
Sidhant Narayan
120CS0199
NIT Rourkela
Software Requirements Specification for Graphics Editor
Page ii
Table of Contents
1. Introduction 1
2. Overall Description 2
3. Functional Requirements 3
4. External interface requirements 5
5. Performance Requirements 6
6. Other Nonfunctional Requirement 6
7. Other requirements 7
Software Requirements Specification for Graphics Editor Page 1
1. Introduction
1.1 Purpose
The purpose of this document is to present a detailed description of graphic editing
software. The goal of the system is to develop software, in which users will be able to
draw lines, rectangles, circles, various geometrical shapes and can insert text in them.
Over all with the help of this software user can draw flow chart easily.
1.3 Definitions
GEI – Graphic Editing Interface
CSCI – Computer software configuration item
SQL - Structured query language
JPEG - Joint photographic experts group
PNG – Portable Network Graphics
SRS – Software Requirement Specification
1.4 References
IEEE SRS format
MS office paint
Developers need to create a user interface so that users can interact with the editor. Developers
need to develop a function, so that the graph can fit into a full screen and one part of the graph can
be moved from one part to another easily. The editor should able to access the disk of the computer
so they user can download the graphics and retrieve it whenever he/she wants it.
Software Requirements Specification for Graphics Editor Page 2
2. Overall Description
Platform: java
Software Requirements Specification for Graphics Editor Page 3
3. Functional Requirements
The external interface shall store information about the past sequence of edit actions, so
that it can provide a multi-level undo. It shall allow the user to undo an entire sequence of
edits, back to the last time the figure was saved to a file. The saved list of edit actions
shall be cleared each time the current figure is saved. The external interface shall store a
list of recently opened files to allow the user instant access to these files. It shall store
user preferences, including the size, position and zoom level of the current view, so that
these can be restored if the software is closed and reopened.
The external interface shall make the following commands available to the user. These
commands shall be provided by whatever interface mechanisms are appropriate, (ex:
pull-down or pop-up menus, tool palettes, keyboard shortcuts, etc…). A combination of
such mechanisms may be used if usability testing suggests they are helpful.
• New: initializes the current empty page to draw the figure on. This
command must give the user a warning (and a chance to cancel the
operation) if the previous figure has not been saved since the last edit
• Open: allows the user to browse the directory structure to select a file to
open. This command must give the user a warning (and a chance to cancel
the operation) if the previous figure has not been saved since the last edit.
• Save: saves the figure to the most recent file associated with this figure. If
the current graph has been initialized and not yet saved to a file, this
command functions the same as the “save as” command.
Software Requirements Specification for Graphics Editor Page 4
• Save as: this command shall prompt the user to select a directory and a
filename to save the current file. If the selected filename already exists, this
command shall ask the user to confirm whether to overwrite the existing file.
• Export: this command shall prompt the user to select a directory and a
filename to export an image (bitmap type) to the current drawing.
• Scroll: allows the user to scroll to all parts of the graph that are not visible in
the current view, without changing the zoom level. If the entire drawing is
visible, this command shall not be enabled.
• Undo: allows the user to undo edit actions. A multi-level undo shall be
provided to allow the user to keep undoing edit actions, back to the last
saved version of the file.
• Redo: allows the user to ‘undo’ an undo command. This command shall be
enabled immediately after an undo command has been used, and disabled
as soon as other edit actions are performed.
• Repeat: allows the user to repeat the last edit action on the current
selection.
• Revert: allows the user to revert to the last saved version of the current
drawing. This command must ask the user to confirm that they wish to
discard all edits to the current drawing.
• Print: opens the printer window to print the currently opened drawing. If
there is no printer connected, the drawing shall be saved to a pdf format.
• Select: the user can select a particular figure on the drawing by clicking
mouse pointer on that particular object.
• Move: upon selecting a figure, user shall be able to move the particular
object along any direction by specified amount.
• Delete: upon selecting a figure, user shall be to delete the selected figure
from current drawing.
User drawing commands (Provided as a tool bar with icons for each command)
• Zoom in: allows the user to zoom in on the current view, centred on the
mouse pointer
Software Requirements Specification for Graphics Editor Page 5
.
• Zoom out: allows the user to zoom out from the current view. Enough levels
of magnification shall be provided to allow the user to zoom out such that the
entire drawing is visible (even if much of the detail is lost).
• Draw circle: the user shall be able to draw a circular shaped figure on the
screen using the mouse.
• Draw line: the user shall be able to draw a straight line on the screen using
the mouse.
• Draw rectangle: The user shall be able to draw rectangle on screen at any
coordinates.
• Draw ellipse: user shall be able to ellipse shaped figure on screen with the
help of mouse.
• Draw polygon: the user shall be able to draw a polygon upon specifying the
number of edges..
• Add text: this command forms a selected rectangular region on the screen
where any text can be entered and can be moved around the drawing.
A fit screen function to make the entire created graphics fit the screen by automatically
adjusting the zoom and pan values.
All interaction with the user shall be via the GEI CSCI. The interface provided by the GEI
may be graphical or textual. The interface shall always give a view of the current graph. If
the current graph is too large to display on the screen, the GEI shall display part of it, and
provide controls for scrolling to the hidden parts. The GEI shall also provide a mechanism
for zooming out, to allow the user to see the entire graph in a single view (without
necessarily seeing all the detail). The GEI shall also provide an interface for loading and
saving files. It shall provide a visual reminder if the current graph has been edited but not
yet saved, and in this state, shall warn the user if she attempts to close the graph (or open
a different one) without saving the current graph first. It shall also provide a warning if the
user attempts to overwrite an existing file. For ease of use, the GEI shall allow the user to
browse the file system when opening or saving files, and the GEI shall remember the
name and location of the last file opened.
None
The system shall make use of the operating system calls to the file management system
to store and retrieve files containing drawings and images.
5. Performance Requirements
The system shall respond to each user input within 2 seconds. The system shall be able
to handle large diagrams, as would be generated from typical reverse engineering tools.
When laying out large diagrams, speed is important. If the layout will take more than a few
seconds, the user shall be warned of this, and given a progress indicator. There are no
other performance requirements.
Graphics Card
7. Other requirements