Developing emol!

From Wiki

(Redirected from PythonThompsonemol!)
Jump to: navigation, search

This is the wiki page for the showmedo video series Developing emol! by User:ErikThompson

Contents

Project Overview

This video series, entitled "Developing emol!", is intended to document the development of a not too trivial of a program. An open-source, cross-platform, molecular (.pdb file) viewing, slideshow capable program to be precise.

The video series will document everything and include: the initial plans for the program, any proof-of-concept test programs, the thought process for any design or technology choices I make, lots of Python code (OpenGL,wxPython,sqlite), talk of molecules, and documentation of steps taken to distribute the program in a .deb file for the Debian and Ubuntu Linux distributions.

Most software projects fail [1]. Will this one fail too?! Watch this series as it is published to find out! Production will begin in late December.

Mission Statement

Develop of an open source cross platform molecular (.pdb file) viewing program with slideshow capabilities.

Program Name

emol!

Other Goals

Document the development process in a video series. Create and maintain a .deb installer package for easy installation into Debian and Ubuntu linux distributions.

Technologies planned to incorporate in the program (may change)

wxPython - for gui (menu, dialogs, etc.)

pyOpenGL - to display the molecules

sqlite - to store any data we may want to save

Software License

GNU GPLv2

Video License

CC By SA

Program Inspiration

RasMol - Nice clean cross-platform interface for viewing .pdb files

xscreensaver: Molecule - cool slideshow of pdb files for linux and (I think) the mac.

Other molecule viewing programs I like:

VMD and pyMol - both great programs with lots of features.

Use Cases

-------------------------------------------------------

Actor - End User
Goal - User wants to view a single pdb file

Main Success Scenario:
1.  User launches the emol! program
2.  User goes to the File Menu and selects the 'Open File...' option.
3.  The System displays an Open File Dialog Window.
4.  User navigates to and selects the pdb file he wants to view.
5.  The System displays the pdb file.

Exceptions to be dealt with:
- PDB file is in an invalid format.
- Molecule is so large that the system hangs when it tries to display it.

----------------------------------------------------------

Actor - End User
Goal - Wants to view a folder of pdb files in a slide show

Main Success Scenario:
1.  User launches the emol! program
2.  User goes to the File Menu and selects the 'Open Folder...' option.
3.  The System displays an Open Folder Dialog Window
4.  User navigates to and selects his folder of pdb files
5.  The System displays the pdb files in slide show.

-----------------------------------------------------------

Actor: End User 
Goal: User wants to change the settings of the slideshow:
Precondition:  emol! has already been launched and a molecule slideshow is in progress.

Main Success scenario:
1.  User goes to the Edit Menu and selects the 'Slideshow Settings...' option.
2.  The system displays the 'Slideshow Settings' dialog window.
3.  User increases the 'Time delay' setting to 10 seconds.
4.  The system responds accordingly advances to the next slide every 10 seconds.

------------------------------------------------------------

Actor: End User 
Goal: User wants to turn off the text description display of the molucles being viewed:
Precondition:  emol! has already been launched and a molecule with a text description is displayed.

Main Success scenario:
1.  User goes to the View Menu and selects the 'Molecule Text'.
2.  The system no longer displays the text description of the molecule.
3.  The system removes the check next to the 'Molecule Text' menu item.

-------------------------------------------------------------

Source code hosted on Launchpad

Project page: http://launchpad.net/emol

Bazaar version control software

Bazaar

Using Launchpad and Bazaar

Personal tools