SE401:Group19
Jump to navigation
Jump to search
File:FbenchLogo.jpg | FBench
|
FBench is an open source integrated development environment (IDE) for the simulation and visualisation of control systems. These systems are represented as function block diagrams which are edited from within the FBench application. |
Project Details
Category: Software Tools (SE) Project Code: 19 Supervisor: Dr Valeriy Vyatkin Second Examiner: Dr Gerald Weber Students: Inhoi Park[email] and Tom Mitchell[email] Description: A cool editor of visual programs (presented as function block diagrams) is much needed! There are several tool prototypes available but none of them is up to the modern level of graphical user interface design. Something as intuitive as iPhone’s GUI needs to be developed. The desired functions include quick and easy navigation in large networks of function blocks (zoom-unzoom, opening/exiting blocks), easy re-factoring, visualising of real-time data, etc. The editor will be a part of a bigger open –source tool called FBench, which has been developing through the past 2 years by the “Industrial Informatics” research group. The written in Java FBench is an integrated development environment for control systems. The functions are integrated using a simple mechanism of plug-ins similar to that of Eclipse. The editor need to be developed as plug-in for FBench . The required skills for this project are: strong enthusiasm and background about software design, especially in the area of human-computer interaction.
Goals
Outcome: Visual editor for function block diagrams with advanced user interface. Specific editor ideas: (Preliminary - to be prioritised)
Priority High Medium Low Complete
Status Pending On Hold In Progress Complete
Feature Priority Time estimate Status Actual time Highlight all connections coming out of the selected block Complete 2 Weeks Complete 3 Weeks Tool box for library elements Complete 2 Weeks Complete 2 Weeks Zoom Complete 1 Week Complete 1 Week Colouring of connections on hover Complete 1 Week Complete 1 Week Make block type clearer (different font) Complete 1 Week Complete 1/2 Week Selection of multiple elements Complete 2 Weeks Complete 3 Weeks Allow the user to make connections by dragging the mouse Complete 2 Weeks Complete 2 Weeks Widen lines that overlap Complete 2 Weeks Complete 2 Weeks Allow independent zooming on different tabs High 1 Week On Hold Cut/Copy and Paste (Dependent on selection of multiple elements)
High 1 Week Pending Combine multiple selected function blocks into a composite block (Dependent on selection of multiple elements)
High 2 Weeks Pending Undo/redo High 3 Weeks Pending Layers Medium 2 Weeks Pending Connection Buses Medium 2 Weeks Pending Multi-point lines Medium 2 Weeks Pending Have connections automatically avoid collision with blocks Medium 3 Weeks Pending Edit blocks in place Low 2 Weeks Pending Overall block hierarchy browser Low 1 Week Pending Snap grid Low 1 Week Pending Algorithm to optimally arrange blocks Low 3 Weeks Pending Add connector pins to blocks Low 1 Week Pending
Ideas for future development
- Fully graphical arc connection and re-connection [VV]
- Consider possibility of showing FB interface [VV]
- Show (and browse through) the hierarchy of FBs (like tree) [VV]
Project Documentation
Project Progress
Progress is outlined in the goals priority/status table above.
Meeting Minutes
- Team Meeting
- 20th Mar 1pm
- 27th Mar 1pm
- 31th Mar 1pm
- 2nd Apr 1pm
- 9th Apr 1pm
- 14th - 21st Apr
- 23rd Apr - 5th May
- 7th May - 21st May
- 26th May - 11th June
- 23rd June
- 7th July
- Lecturer Meeting
- 20th Mar 1.30pm
- 4th Apr 2pm
- 11th Apr 2pm
- 29th Apr 2.30pm - Interim Report meeting.
- 16th May 3pm
- 23rd May 2pm
- 30th May 2pm
- 13th June
- 20th June
Resources
- SVN
Useful Links
References
<references />