Software Components - PowerPoint PPT Presentation

About This Presentation
Title:

Software Components

Description:

XAL Version 2 SOFTWARE COMPONENTS DEPLOYMENT REPOSITORY STRUCTURE TEST SUITES Christopher K. Allen, ORNL – PowerPoint PPT presentation

Number of Views:52
Avg rating:3.0/5.0
Slides: 16
Provided by: Christ857
Learn more at: https://epics.anl.gov
Category:

less

Transcript and Presenter's Notes

Title: Software Components


1
XAL Version 2
  • Software Components
  • Deployment
  • Repository Structure
  • Test Suites

Christopher K. Allen, ORNL
2
Outline XAL Version 2
  1. Motivation
  2. Development Strategy
  3. Version 2 Architecture
  4. Installation
  5. Components
  6. Repository structure
  7. Test Suites
  8. Summary
  9. Open Issues

3
1. Motivation
"Engineers believe that if it ain't broke, it
doesn't have enough features yet."      Scott
Adams.
  • Many new features and capabilities have been
    added to XAL since its original design
  • XAL is getting big
  • Not all capabilities fit naturally into the
    original design
  • Multi-site development(?)
  • Deployment is getting complicated
  • 3rd party software
  • New Architecture to supported the evolved
    framework
  • XAL2

XAL Version 1
XAL Version 2
4
2. XAL 2 Development Plan
  • Version 2 Development
  • Maintain working operational version
  • Migrate/develop XAL 2 concurrently into different
    repository
  • New installations from XAL 2 repository

operation
migration
5
3 Original XAL Conceptual Design
  • XAL was originally designed with the following
    objectives
  • Hware representation (introspective)
  • High-level connection management
  • Fast simulation
  • Tool suite
  • It is natural to break out these components
    directly into software components

6
3. XAL2 Components
  • Create separate JAR files for each component
  • Eases deployment
  • Install in stages
  • Compartmentalize XAL development
  • Mnging team develop.
  • Maintenance
  • Quality control
  • Development is Harder
  • Application development
  • Easier?

EPICS
7
3. XAL2 Installation
Effort
CAJ JCA
xal.xml DB
node_map
model_params
element_map
8
XAL Components What goes where?
XAL2 Collaboration Diagram
  • The number of outgoing edges indicates dependency
  • The number of incoming edges indicates importance
    (include multi-vertex edges)
  • For example,Break a Core Tool
  • breaks XAL Core
  • break Online Model
  • breaks applications

9
3. XAL2 Site Extensions
  • We have addressed core XAL
  • XAL elements common to all sites
  • Extension XAL
  • Specific to site
  • Developed by site

10
3. XAL2 Repository Structure
  • Accommodate
  • Component builds
  • Multi-site development
  • Multi-site extensions
  • Management?
  • Test suites?
  • High-priest of XXX.jar?

11
4. Test Suites
  • Must ensure new code does not break repository
  • Developers love to write testing code
  • (Developers should write testing code)
  • Provide test suites for important code
  • Critical code must ensure operation
  • Many people are developing XAL
  • With a standard test suite we can check
    modifications

12
4. Test Suites
  • Where do we put them?
  • In development branch?
  • Mirror branch (e.g., test.core.model.alg ?
    xal.core.model.alg)
  • Separate jar (testxalmodel2.jar)
  • Naming convention?
  • TestClassName.java
  • TestClassName.py
  • JUnit?!

13
5. Summary
  • XAL has become a very large software system
  • New version would address
  • - deployment- maintenance- usability
  • We can start moving to a version 2 without
    interrupting operation

14
6. Open Issues
  • Repository management
  • 3rd Party software
  • Testing
  • Schedule
  • Responsible parties

15
Software Development and Social Values
  • A man was crossing a road one day when a frog
    called out to him and said "If you kiss me, I'll
    turn into a beautiful princess.
  • He bent over, picked up the frog and put it in
    his pocket. The frog spoke up again and said "If
    you kiss me and turn me back into a beautiful
    princess, I will stay with you for one week.
  • The man took the frog out of his pocket, smiled
    at it and returned it to the pocket. The frog
    then cried out "If you kiss me and turn me back
    into a princess, I'll stay with you and do
    ANYTHING you want".
  • Again the man took the frog out, smiled at it and
    put it back into his pocket.
  • Finally, the frog asked "What is the matter ?
    I've told you I'm a beautiful princess, that I'll
    stay with you for a week and do anything you
    want. Why won't you kiss me ?
  • The man said, "Look I'm a software engineer. I
    don't have time for a girlfriend, but a talking
    frog is cool."
Write a Comment
User Comments (0)
About PowerShow.com