Title: Danago Diagram Editor User Interface Design
1Danago Diagram Editor(User Interface Design)
- Dan Pollack
- CIS 4914 Senior Design
- Wed. April 13th, 2005
2Basis for project
- Motivation To create a simple-to-use, low-cost,
cross-platform diagram editor. This simplicity
cannot be found in the other diagram editors out
in the market. - Problem A simple, cross-platform diagram editor
does not currently exist in the market. Most
editors that do exist come with extra tools
that the user pays for and will probably never
use. - Solution Danago, a diagram editor with a simple
user-friendly interface, that doesnt come with
all those extra costly tools!!
3Sources
- Heller, Philip. Ground-Up Java. Alameda, CA
Sybex 1999. -
- Horstmann, Cay, and Gary Cornell. Core Java 2.
Santa Clara, CA Sun Microsystems Press 2005. - ONeil Joseph. Teach Yourself Java. Berkeley,
Osborne/McGraw-Hill. 1999. - Robinson Matthew and Vorobiev Pavel. Swing,
Second Edition. New York, Manning Publications
2nd edition, 2003. - Sun Microsystems. 1999. AWT Native Interface.
Retrieved February 12, 2005, from
http//java.sun.com/j2se/1.3/docs/guide/awt/AWT_Na
tive_Interface.html
4Sources Continued
- Talbot, David. 2003. To Software Architects
Serve End Users, Not Your Egos. Retreived - April 1,2005, from http//www.devx.com/opin
ion/Article/22649 - Walker, Royce. 2004. Improving Software
Development Economics. Retrieved March 31, 2005,
from http//64.233.161.104/search?qcache5IAD D
BzctMQJwww.ibm.com/developerwor s/rational/libra
ry/content/RationalEdge/apr01/Improvin gSoftwareDe
velopmentEco micsPartIApr01.pdfUSEOFBASICSOFT
WARET OOLSTRENDShlenstar 2
5Work Done
- 1. 100 of user interface completed.
- 2. File filtering complete.
- 3. Communication with file system.
- 4. Implemented file saving and opening
functionality in the GUI. - 5. User story tests passed for interface
- 6. Re-organized code for organization and
understanding
Tools Used
Images obtained from http//java.sun.com and
http//www.netbeans.org
6File Menu New Action Sequence Execution
7File Menu Open Action Sequence Execution
8File Menu Save Action Sequence Execution
9File Menu Save-As Action Sequence Execution
10File Menu Exit Action Sequence Execution
11Insert Menu Action Sequence Execution
12Font Menu Action Sequence Execution
13View Menu Action Sequence Execution
14Help Menu Action Sequence Execution
15GUI Functionality Screen Shots
Save Work Dialog
New File
Open File
Read-Only Error
Invalid File Extension Error
Save Question on Exit
16 Implementation Screen Shots
Draw Square
Draw Various shapes/Lines
17Conclusion
- The Danago diagram editor is designed to be a
viable software tool that provides cross-platform
and basic functional diagram editing
capabilities. The editor addresses the problem of
providing a simple, basic, and portable software
tool to the public, without increasing costs by
implementing extra tools and services.
18Conclusion Continued
- During this senior design project I have learned
that when groups work in software development,
each member needs to communicate and contribute
equally to the design at every stage. Lack of
equal group member communication and
participation at each stage causes the designs of
each group member to become difficult to
understand and incomprehensible to the other
group member. - This was especially true when we decided to split
up on our tasks early in the design process. The
user interface was designed in such a manner that
it was difficult for the other group member to
see what was going on (even with re-factoring and
documentation).
19Conclusion Continued
- During the early phases of the design we were
able to accomplish more by working together on
the code. Each group member understood what was
being implemented. - If given another opportunity, we would have
co-designed the entire program and not split up
tasks to the point where each team members code
became incomprehensible. - Because of the complexity of this project it can
be left for another Semester. Another group would
build onto what we have designed, improve the
modularity of the code, and add additional
functionality.