Software Merge Project
description
Transcript of Software Merge Project
![Page 1: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/1.jpg)
Software Merge Project
• Last time the background was poor so we decided to make it much better
![Page 2: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/2.jpg)
![Page 3: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/3.jpg)
Welcome• Usage example• What we did – task assignments• What are we doing• Communication• Documentation• Model• Technologies• Problems
![Page 4: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/4.jpg)
What we did– Research– Java– Eclipse– CVS– EMF– GEF– Eclipse Plug-ins
![Page 5: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/5.jpg)
What are we doingMathias Alexandersson Documentation & supervision (if we forgot some use
cases, etc.), communication with Richard. Approval lobbing.
Sebastien Bourgeois GUI modeling & drag and drop research, do we need it?
Lei Liu GUI modeling & Java custom drawn components research, communication.
Marko Burazin Plug-in model, GUI model, component (GUI – Plug-in) interconnection research.
Mladen Cikara Plug-in model, views and perspectives, how to integrate custom drawn components, communication.
Miroslav Lakotic Engine model, history model, system integration, presentation, interfaces.
Marko Pecic Input structure modeling, EMF , history suggestions, interconnection, dynamic system structure build.
![Page 6: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/6.jpg)
Communication– Skype– Documentation– Pictures & diagrams– Fun & personal
![Page 7: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/7.jpg)
Documentation• Every desided document is on the project page
including research reports• Reserach reports
– EMF– XSD– Eclipse Plugin development– GEF
• Week reports• Skype chat transripts (translated)
![Page 8: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/8.jpg)
Usage example and requirements• The purpose of Software Merge
• The first usage example draft
![Page 9: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/9.jpg)
GUI
1
![Page 10: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/10.jpg)
GUI
2
![Page 11: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/11.jpg)
GUI
3
![Page 12: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/12.jpg)
GUI
4
![Page 13: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/13.jpg)
The basic component modelMerge model
System representation
Engine & component interconection
GUI
History management
Eclipse Plugin
Marko Pecic
Miroslav Lakotic
Mladen Cikara & Marko Burazin
Lei Liu & Sebastien Bourgeois
Miroslav Lakotic & Marko Pecic
Documentation & supervision
Mathias Alexandersson
![Page 14: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/14.jpg)
Plug-in development• Perspectives
• Views
• Model
• Changes to be made
![Page 15: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/15.jpg)
•Plugin development– MVC (model-view-controller) architecture
– The models are outside
GEFInputSystemView
GEFInputSystemController
GEFOutputSystemView
GEFOutputSystemController
InputSystemViewPlugin OutputsystemViewPlugin
11
11
GEFHistoryView
HistoryViewPlugin
11
GEFHistoryController
![Page 16: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/16.jpg)
Input structures• EMF
• System representation
0..*
0..*
child components0..*
parent components
components
Application
name: String
Component
name: String
Component
name: String
Component
name: String
1
1
![Page 17: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/17.jpg)
• Save
• Load XMI / XML documents
Serialization
EMF Application
Resources
Class A
Class B
Class C
ECore model
Deserialization
EMF Application
ResourcesXMI document
EList
Class A
Class B
Class C
![Page 18: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/18.jpg)
GEF: MVC Framework
![Page 19: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/19.jpg)
GEF: Build the view
![Page 20: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/20.jpg)
GEF: Perform a modification 1ToolUI
RootPanelEditPart
model objectchangeModel()
1.getTargetEditPart(Request)
EditPart2.getCommand(Request)3.getCommand(Request)
Command4.executeCommand()
![Page 21: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/21.jpg)
GEF: Perform a modification 2
![Page 22: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/22.jpg)
Engine & history• Engine
– Link between components– Part of MVC architecture
• History– EMF generated– Decision making mechanism– Version comparisons– Branching– Team is still devided
![Page 23: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/23.jpg)
The Goal
![Page 24: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/24.jpg)
Problems faced
• Communications between two sides• Cooperation between two sides• Understand the requirement from the customers• Thinking the same way• Divison between some project components• Learning Eclipse plug-in frameworks
![Page 25: Software Merge Project](https://reader030.fdocuments.us/reader030/viewer/2022013101/56813ad0550346895da2fa5e/html5/thumbnails/25.jpg)
Thank you
Questions?