Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Papyrus for Education
This part of the Wiki is dedicated to the use of Papyrus for Education.
NOTE: Currently under construction.
If you want to stay tuned with this initiative, subscribe to the mailing list (more info here: https://dev.eclipse.org/mailman/listinfo/papyrus4edu)
For more details contact Jean-Michel Bruel.
Contents
Links and general information
Papyrus4Education is now available as a Papyrus Mars extra. To install it :
- You need the Mars version of Papyrus (see https://eclipse.org/downloads/index-developer-installer.php for eclipse mars,
and http://download.eclipse.org/modeling/mdt/papyrus/updates/releases/mars for Papyrus installation)
- Use this update site: http://download.eclipse.org/modeling/mdt/papyrus/updates/releases/mars/extra/
- Then select Papyrus Extra Other and select the feature (see below)
- To start Papyrus4Education select Preferences > Papyrus > ViewPoints Connfiguration
NOTE: The feature has been published with 0.7.0 version since the work is still in progress, the current implementation should follow the following feature description.
The repo of the project is here: https://git.eclipse.org/c/papyrus/org.eclipse.papyrus.git/. Contributions welcome!
List of concepts
Here is an initial list of concepts.
`Initial` means that the concept should be available from scratch, `Basics` means that those concepts are taught to beginners, but most of the time in a second step. `Advanced` will be those almost never taught but useful.
Class Diagram
The `Class Diagram` is often the first one (easy to make exercises).
Initial
- Class - Association - Property - Operation - Comments - Multiplicity
Basics
- Generalization/Specialization - Order of reading - AggregationKind - AssociationClass - DataType - Dependency - Navigability - Ownership - Enumeration - Interface - MultiplicityElement - Operation - Package - VisibilityKind
Use Case Diagram
The `Use Case Diagram` is the next one (or first) because it is easy to understand by people without a technical background and because it has been widely used in modern software engineering for decades.
Initials
- Actor - UseCase
Basics
- Extend - Include
Sequence Diagram
The `Sequence Diagram` is most of the time used as the first dynamic model. Each use case is supposed to be described by at least one DS. At first, we do "System Seq. Diag." where there are only actors plus a fake "system" participant, to represent interactions at high level.
Initials
- Participant - Message - Response
Basics
- CombinedFragments (opt,alt,par,ref) - Synchronous/Asynchronous messages
StateMachines
The `State Machine Diagram` is very often taught because you can use it for other teaching classes (networks, system, etc.).
Initials
- State - InitialState - FinalState - Transition (event,gard,action)
Basics
- StateMachine - Region
Activities
I don't teach `Activity Diagrams`, as some don't teach sequence diagram instead. But when I do, I only teach very basic notions.
Initial
- Activity - InitialNode - ActivityFinal - ControlFlow