Interfaces are present in Class, Component, Deployment, and Object diagrams. Poseidon allows you to choose a variety of ways to represent interfaces, the standard being the traditional box notation, which looks like a class with only two compartments (as attributes are not allowed in interfaces). They can also be drawn using lollipop (or ball) notation, and you can toggle back and forth between these two.
The box notation is just what is sounds like - the Interface is shown as a box with two compartments. The uppermost compartment contains the name, stereotype, and package information, while the bottom compartment displays operations that belong to the interface. The options available to an interface (such as hiding compartments) are identical to those available to classes.
To create a new interface with box notation, select the Interface button from the toolbar and click in the diagram.
You can toggle between box and lollipop notation using the representation rapid button.
Lollipop notation is a condensed way to represent an interface. The interface itself is drawn as a circle with a solid line connecting it to another element. This indicates that the element to which it is connected 'offers' the interface.
In this example, the class Foo offers Bar as an interface.
You can create the class first and then add the interface using the lollipop rapid button.
Alternatively, you can create the interface with the 'Interface as Circle' toolbar button and connect it to the element by either dragging the lollipop rapid button from the element to the interface, or you can select the lollipop button from the toolbar and drag it from the element to the interface.
The order in which the elements are connected is important to the meaning of the diagram. If you drag the relationship from the interface to the element, you will create a 'realize' relationship, indicating that the interface realizes the element.
In addition to the compact representations, lollipop notation has an advantage in the clarity of a diagram. This is because not only can 'offered' interfaces be modeled, but 'required' ones as well. These are called 'sockets' and are drawn with a semi-circle and line to the element requiring the interface.
To create a standalone socket that does not connect to an offered interface, you can either click the socket rapid button from an element, or you can click the socket button in the toolbar and drag it from an element to a blank space in the diagram.
To connect a socket to an offered interface, first create the offered interface as a circle. Then drag the socket rapid button (or socket toolbar button) from the element requiring the interface to the offered interface.
Here we see that class Foo offers the interface (Bar) that class Baz requires.