1 / 10

Bandera transition

Bandera transition. Should Bandera become integrated with Eclipse?. Topics. Pros/Cons of using Eclipse Modules effected Approach Guidelines for design, implementation, and testing Misc issues. Pros/Cons of using Eclipse. Two separate issues: GUI and AST

alayna
Download Presentation

Bandera transition

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Bandera transition Should Bandera become integrated with Eclipse?

  2. Topics • Pros/Cons of using Eclipse • Modules effected • Approach • Guidelines for design, implementation, and testing • Misc issues

  3. Pros/Cons of using Eclipse • Two separate issues: GUI and AST • Con: more work to get command line client • Pro/Con: re-design or re-implement most of GUI • Con: lost time for developing new features • Can the Eclipse AST provide enough information or would it be good to just transition to new latest SOOT? • Con: Eclipse is out of our control directly • Con: API/AST is a moving target?

  4. Pros/Cons (contd) • Pro: cross platform/window management/file management • Pro: speed? • Pro: Plug-in architecture • Pro: Make it an easier transition for “real” developers to start using Bandera • Will distribution/installation be effected? • Con: SWT less supported than Swing • Con: footprint is large • Con: UI menu sharing problematic • Pro: don’t have to re-implement some features • Pro: integration of development env with application being developed

  5. Pros/Cons (contd)

  6. Modules effected • GUI – probably a complete re-write • Session management • File management • Counter example interpretation • Every module!!! • Plug-ins • Abs engine • BSL Compiler • BIRch • Counter Example • BFA • BFA UI • Slicer • Slicer UI • Bandera (Session ….)

  7. Module effected (contd)

  8. Approach • Complete re-design or just re-implement the necessary portions (porting)? • Make as many modules as possible into plug-ins and take advantage of the Eclipse plug-in architecture?

  9. Guidelines • Pre/Post conditions (in Javadocs) • Assertions – use JDK assert • Unit testing should be used (JUnit, XMLUnit, etc.) • Integration/regression testing – re-design • Javadocs!!!! • Every method needs some form of comment • Every field needs some form of comment • Author! Version, suggest see, • Explicit imports • Pre/post (any format -> prefer english!!!) • Collection<type> suggested • @param • @return • @exception suggested • @see suggested • Design documents - optional

  10. Misc • What backends should be supported? • JPF, Spin, dSpin, BIRch, HSF-Spin, … • Is it possible to define an API and a set of common tools so that others can implement and maintain the backends? • Cadena and Bandera interaction?

More Related