Software Merge Project Last time the background was poor so we decided to make it much better.

25
Software Merge Project • Last time the background was poor so we decided to make it much better

Transcript of Software Merge Project Last time the background was poor so we decided to make it much better.

Page 1: Software Merge Project Last time the background was poor so we decided to make it much better.

Software Merge Project

• Last time the background was poor so we decided to make it much better

Page 2: Software Merge Project Last time the background was poor so we decided to make it much better.
Page 3: Software Merge Project Last time the background was poor so we decided to make it much better.

Welcome• Usage example• What we did – task assignments• What are we doing• Communication• Documentation• Model• Technologies• Problems

Page 4: Software Merge Project Last time the background was poor so we decided to make it much better.

What we did– Research– Java– Eclipse– CVS– EMF– GEF– Eclipse Plug-ins

Page 5: Software Merge Project Last time the background was poor so we decided to make it much better.

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 Last time the background was poor so we decided to make it much better.

Communication– Skype– Documentation– Pictures & diagrams– Fun & personal

Page 7: Software Merge Project Last time the background was poor so we decided to make it much better.

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 Last time the background was poor so we decided to make it much better.

Usage example and requirements• The purpose of Software Merge

• The first usage example draft

Page 9: Software Merge Project Last time the background was poor so we decided to make it much better.

GUI

1

Page 10: Software Merge Project Last time the background was poor so we decided to make it much better.

GUI

2

Page 11: Software Merge Project Last time the background was poor so we decided to make it much better.

GUI

3

Page 12: Software Merge Project Last time the background was poor so we decided to make it much better.

GUI

4

Page 13: Software Merge Project Last time the background was poor so we decided to make it much better.

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 Last time the background was poor so we decided to make it much better.

Plug-in development• Perspectives

• Views

• Model

• Changes to be made

Page 15: Software Merge Project Last time the background was poor so we decided to make it much better.

•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 Last time the background was poor so we decided to make it much better.

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 Last time the background was poor so we decided to make it much better.

• 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 Last time the background was poor so we decided to make it much better.

GEF: MVC Framework

Page 19: Software Merge Project Last time the background was poor so we decided to make it much better.

GEF: Build the view

Page 20: Software Merge Project Last time the background was poor so we decided to make it much better.

GEF: Perform a modification 1ToolUI

RootPanelEditPart

model objectchangeModel()

1.getTargetEditPart(Request)

EditPart2.getCommand(Request)3.getCommand(Request)

Command4.executeCommand()

Page 21: Software Merge Project Last time the background was poor so we decided to make it much better.

GEF: Perform a modification 2

Page 22: Software Merge Project Last time the background was poor so we decided to make it much better.

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 Last time the background was poor so we decided to make it much better.

The Goal

Page 24: Software Merge Project Last time the background was poor so we decided to make it much better.

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 Last time the background was poor so we decided to make it much better.

Thank you

Questions?