Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in?...
-
Upload
alyson-mccormick -
Category
Documents
-
view
212 -
download
0
Transcript of Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in?...
![Page 1: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/1.jpg)
Adopting Open Source Development Tools in a Commercial Production Environment –
are we locked-in?
Tenth International Workshop onExploring Modeling Methods in Systems Analysis and Design
Porto, Portugal :: 13-14 June, 2005
Anna PerssonHenrik Gustavsson
Brian Lings Björn Lundell
Anders MattssonUlf Ärlig
![Page 2: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/2.jpg)
Context for the StudyCombitech Systems AB
• Advanced development services for technical real-time systems
• Company founded in 1992
• No of employees: 230
• Masters degree: 90 %
• Average working experience: 8 years
• Owned by Saab AB
• Business areas: Automotive, Telecom, Space, Defense,Medical equipment, ...
![Page 3: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/3.jpg)
Current practice
• Tool users are often locked in to specific tools or tool vendors since the commercial tools use proprietary formats
• This is a problem since over the lifetime of a project, tools may have disappeared or may have changed so much that an old data file may not be readable
• The use of open source tools is a flexible option for reducing lock-in
![Page 4: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/4.jpg)
The value of open standards
• Open standards have a wide range of different advantages
• From the standpoint of interchange, the support for open standards will simplify interchange since tools only need to support a single open format
![Page 5: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/5.jpg)
Generation of XMI document for a UML model
translates to
conforms to
UML metamodel
UML model XMI documenttranslates to
XMI DTD
conforms to
(from Stevens, 2003)
![Page 6: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/6.jpg)
Open Source UML modelling tools used in the study ...
ArgoUMLhttp://argouml.tigris.org
Fujabahttp://www.fujaba.de
Umbrellohttp://uml.sourceforge.net
XMI version 1.0 1.1 1.2
Storage format
Project-specific Project-specific XMI
UML models All except object Class, state and activity
All except object
Forward eng. to
Java, C++, PHP Java Java, C++, PHP, SQL, ...
Reverse eng. from
Java Java C++
Platform All (Java based) All (Java based) Linux (with KDE)
Active developers
Approx. 25 Approx. 35 Approx. 5
License BSD Open Source
GNU Lesser General Public
GNU General Public
![Page 7: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/7.jpg)
Case Study: Two different models of different complexity levels were
evaluated
• Model A is a larger model which was exported to an XMI file consisting of 175.000 lines of XMI code for an UML class model containing approximately 170 classes.
• Model B is a smaller model which was exported to an XMI file consisting of 35.000 lines of XMI code for an UML class model containing approximately 60 classes.
![Page 8: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/8.jpg)
Screen shoot from Model A in Rhapsody
![Page 9: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/9.jpg)
OSS Modelling toolScreen shoot from Model A in ArgoUML
![Page 10: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/10.jpg)
Overview of Model Interchange
Rhapsody Open Source tool
XMI
XMI
1 2
3
4
68
7
9
Validate
Validate5
![Page 11: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/11.jpg)
Steps of interchange process1. Bring up model in Rhapsody2. Export model3. Validate XMI documents
– Larger model did not validate due to ordering problem, this was repaired manually
4. Import into Open Source Tools– Neither Fujaba nor Umbrello could import models due to version
differences. A third tool is needed to convert between 1.0 and 1.2. ArgoUML had problems even though the XMI versions matched and XMI file was validated against XMI DTD
5. Visual Inspection – Since presentation is not exported, model needs to be shuffled
around to be inspected visually6. Export model from Open Source Tools
− Only ArgoUML could import, so ArgoUML alone is used in this step.7. Validate XMI documents
– The exported file did not validate and required some changes8. Import model into Rhapsody9. Visual Inspection10. Repeat from 1
– An outer package was added for each repeat
![Page 12: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/12.jpg)
Experiences
• The experience of Combitech Systems is that the tool market is dynamic and that tools disappear and change during lifetime of a project
• Using more than one tool has several advantages– Protects investment by allowing model to be
imported into other tools
– Individual tool users are allowed to use different tools for different tasks according to preference
– Customers are increasingly knowledgeable about UML and envision a future where parts of model development are carried out at customer sites
![Page 13: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/13.jpg)
XMI
• Interchange process is not perfect
• Interchange is dependent on a single combination of XMI and UML versions
• Round-trip export and import needs some hand-tuning of models
• One very important find is that interchange is dependent of model complexity: a larger model using mainly the same constructs is more difficult to import correctly
• More work in the area of XMI support is needed in both Open Source tools and commercial tools
![Page 14: Adopting Open Source Development Tools in a Commercial Production Environment – are we locked-in? Tenth International Workshop on Exploring Modeling Methods.](https://reader035.fdocuments.us/reader035/viewer/2022081603/56649ea45503460f94ba89f6/html5/thumbnails/14.jpg)
Future Work
• Testing more tool combinations– A study involving a larger set of tools has been
performed
• Visualization and cleaning of XMI files– A visualization engine is being worked on which
allows an XMI file to be analysed and edited– This will increase understanding of file structure and
facilitate import through removal of offending elements
• Universal translator– A project is underway to create an engine which
translates between the various XMI and UML versions and individual idiosyncrasies of different tools