Appropriate use of UML notations is very important for making a meaningful model

UML Diagram Objects   UML Diagram objects and their usage
Here is an overview of all the nine different kinds of Modeling diagram objects that are wrapped under the heading of the UML.

  • UML Class Diagrams
  • UML Use Case Diagrams
  • UML Object Diagrams
  • UML Sequence Diagrams
  • UML Collaboration Diagrams
  • UML Statechart Diagrams
  • UML Activity Diagrams
  • UML Component Diagrams
  • UML Deployment Diagrams

All these objects are available in Creately and you can try out a demo or take a look at some sample UML Diagrams for more context.

Simple Class

The core element of a UML Class Diagram is the class. This is a solid rectangle contains the class name.

Class Object

A class object in a UML Class Diagram represents an entity of a given system that provides an encapsulated implementation of certain functionality of a given entity. This is a rectangle divided into three compartments. The topmost compartment contains the class name. the middle compartment contains the attributes while the lowest compartment contains the list of operations.

Package

A package object in a UML Class and Use Case Diagram provides the ability to group together classes and/or interfaces that are either similar in nature or related. Grouping these design elements in a package element provides for better readability of UML diagrams, especially complex diagrams.

Interface

The Interface object found in a UML Class Diagram indicates a set of operations that would detail the responsibility of a class.

Actor

Actor in a UML Use Case Diagram is any entity (person, organization or external system) that performs a role in one given system. In a use case diagram, an actor interacts with a use case. For example, for modeling a reservation system, a passenger entity represents an actor in the application. Similarly, the ticket clerk who provides the service at the counter is also an actor.

Usecase

A use case in a UML Use Case Diagram gives a visual representation of a distinct business functionalities in a system. For example, for modeling a clinic system, the use cases will be “Make appointment” and “Perform medical tests”.

Simple Object

The simple object from the UML Object Diagram is a rectangle which displays the object name. This object name is usually underlined.

Object

The object element from the UML Object Diagram is a rectangle divided into two parts. The top part contains the name of the object, while the second part contains the attributes of the object. Note : This element should not be mistaken with the Class element which is divided into three parts.

System

A system in a UML Use Case Diagram is a rectangle spanning all the use cases in the system that defines the scope of your system. Anything within the box represents functionality that is in scope and anything outside is not. Note that the actors in the system are outside the system.

Lifeline Notation

The object notation of a UML Sequence Diagram is a rectangle with it’s lifeline (a dashed line) descending from the center of its bottom edge. This element represents the life span of the object during the scenario being modeled.

Object

The object element found in the UML Collaboration Diagram is a rectangle which displays the object name, preceding a colon. The object name is underlined. This shows the objects interacting with each other in the system.

Comment

Comment object in a UML Sequence Diagram and UML Activity Diagram is shown in a rectangle with a folded-over corner. To relate the comment to any object on the diagram, the comment has to be connected to the object with dashed lines.

Activation

Activation elements in the UML Sequence Diagram are boxes on the lifelines. These are also called the method-invocation boxes, and indicate that an object is responding to a message. It starts when the message is received and ends when the object is done handling the message.

Destroy Object

Destroy object in a UML Sequence Diagram is a X at the bottom of an Activation box. This is a UML convention to indicate an object has been removed from memory.

Message Arrow

Message Arrow in the UML Collaboration Diagram shows the interaction between the commencing object and the destination object.

Initial State

The Initial State from the UML Statechart Diagram is the state of an object before any transitions. For objects, this could be the state when instantiated. The Initial State from the UML Activity Diagrammarks the entry point and the initial Activity State. The notation for the Initial State is a small solid filled circle. There can only be one Initial State on a diagram.

End State

End state from the UML Statechart Diagram marks the destruction of the object who’s state we are modeling. The Activity End in aUML Activity Diagram shows the termination of the activity. The End notation is shown as a circle surrounding a small solid filled circle.

Activity

Activity state in a UML Statechart Diagram and UML Activity Diagram marks an action by an object. The notation for this is a rounded rectangle.

Junction

Junction state in a UML Statechart Diagram are vertices that are used to chain together multiple transitions. They are used to construct compound transition paths between states. A junction is represented by a small black circle.

Choice

Choice state in a UML Statechart Diagram evaluates the guards of the triggers of its outgoing transitions to select only one outgoing transition. The decision on which path to take may be a function of the results of prior actions performed in the same run-to-completion step. A choice pseudostate is shown as a diamond-shaped symbol.

Fork / Join

Fork vertices in the UML Statechart Diagram serve to split an incoming transition into two or more transitions terminating on orthogonal target vertices. The segments outgoing from a fork vertex must not have guards or triggers. Join vertices serve to merge several transitions emanating from source vertices in different orthogonal regions. The transitions entering a join vertex cannot have guards or triggers.

A Fork notation in a UML Activity Diagram is a control node that splits a flow into multiple concurrent flows. This will have one incoming edge and multiple outgoing edges. A join node is a control node that synchronizes multiple flows.This will have multiple incoming edges and one outgoing edge.

Composite State

A composite state in a UML Statechart Diagram is a state that has substates (nested states).

Object

The Object notation in a UML Activity Diagram is an activity node that is used to define the object flow in an activity.

Decision

Decision notation in a UML Activity Diagram is a control node that accepts tokens on one or two incoming edges and selects one outgoing edge from one or more outgoing flows.

Flow End

Flow End node in a UML Activity Diagram is a control final node that terminates a flow. It destroys all tokens that arrive at it but has no effect on other flows in the activity. This is a small circle with a X inside.

Signal Receipt

Signal Receipt notation also called the Accept event action in a UML Activity Diagram is an action that waits for a specific event to occur. This is drawn as a concave pentagon.

Signal Sending

Signal Sending in UML Activity Diagram is an action that creates a signal instance from its inputs, and transmits it to the target object, where it may cause the firing of a state machine transition or the execution of an activity.

Activity Partition

Activity Partition in a UML Activity Diagram is either horizontal/vertical swimlane. The partitions are used to separate actions within an activity diagram.

Component

A Component UML Component Diagram represents a modular part of a system. A Component element in a UML Deployment Diagramrepresents a distributable piece of implementation of a system.

Provided Interface

A Provided Interface of a component in a UML Component Diagram describes the services that the component offers to its environment. This is modeled using the lollipop notation.

Required Interface

A Required Interface of a component in a UML Component Diagram declares the services that the component expects from its environment. This is modeled using the socket notation.

Provided Interface & Required Interface with Port

A Provided Interface with Port in a UML Component Diagramspecifies a distinct interaction point between the component and its environment. Ports are depicted as small squares on the sides of components.

Node

A Node element in a UML Deployment Diagram is anything that performs work in the system. This can be either a hardware like personal computers; or a software like the operating system, database server and so forth.

Device

A Device element in a UML Deployment Diagram is a type of node that represents a physical computational resource in a system, such as an application server.

Deployment Specification

A Deployment Specification element in a UML Deployment Diagramis a configuration file, such as an XML document or a text file that defines how an artifact is deployed on a node.

Posted via email from Creately | Comment »

Manage your project better with Org anization Charts

A while back, Indu did three amazing posts on the different types of org charts. While org charts has been the topic of focus this week, we ruminated a bit on how we could use organigrams like never before. True, we did talk about how we could use org charts in an unorthodox manner in our last post, but we wanted to push the envelope a bit further.

You see, there are various tools that are used for project management, which have had varying degrees of success but we thought – Why not form your own customized project management tool using Creately? Confused? Let’s shed some light on this compelling topic.

As our first example, consider two teams of web designers who all report to separate project managers. As a project manager, you would call/phone/email your web designer and divvy up the workload (e.g. to design a wireframe). Make sure you agree on a delivery date and a WIP date as well. Once this is done, using the collaborative features of Creately you can easily see if the tasks are being done. This way you get rid of time wastage and keep track of each team member’s progress without having to invest is a PM tool that is both expensive and is good for just one particular use. Use an organigram (as shown below) to create a customized version of a PM tool relevant to your department alone.

When inside Creately you would click on the blue icon to open up the wireframe / mockup below.

Think that this is probably just a one-off example we cracked our brains at? Think again. Let’s consider a marketing department where you are the boss. You have two executives working for you on various research projects. That big presentation is coming up soon and boy, do you need that Ansoff Matrix and PEST analysis in a hurry. Why not get your executives onto Creately and then collaborate with them. This way you would be aware of who has done what and when. Peruse the example below.

Again clicking on the blue icon, when inside Creately, will open up the PEST diagram.

The aim of this post is to help you think and use Creately from a totally different angle. All it takes is intuitiveness and some innovative thinking to use this smart app anyway you want. We’d be more than glad to offer you more exciting tips on how to use Creately. Plus we’re all eager to know what you think of how we have offered a new spin on things in this post, so please do go ahead and comment. In the meanwhile, stay tuned for some exciting posts from the rest of the Creately team soon!

Posted via email from Creately | Comment »

Creately for Confluence in Beta!

Here at Cinergix we feel like we’re on Cloud 9 right now! Yes, after weeks of arduous hardwork, we’re extremely delighted to announce the Beta release of Creately for Confluence, a plugin for everyone’s favourite collaboration platform, Atlassian Confluence.

This is an online diagramming plugin which lets you create and edit diagrams directly inside Confluence with an easy-to-use in-browser editor. Now everyone on your technical team can communicate with total clarity by including flowcharts, wireframes, sitemaps, UML diagrams or just about any other diagram type to your Confluence wiki pages and blogs. Anyone working on the wiki pages can edit and and modify diagrams as the documentation is worked on. All of this is only one-click away!

Creately for Confluence comes with the same user loved experience just like our Creately online -

  • Smart and interactive interface
  • 1-click create and connect and styling features
  • An extensive library of smart objects
  • Search for images from Google and Iconfinder.com

With this diagramming plugin, you can now get everyone on the same page by adding great looking diagrams to your wiki pages. The ability to quickly add diagrams directly within Wiki pages will make documenting your software projects a lot less of a chore.

Creately for Confluence plugin is now available for free downloads. This is just the beginning, we have a long way to go, so let us know if you have any suggestions on how we can improve.

Watch this space for more updates, we will soon have a more thorough review and usage instructions when the general release is made.

Posted via email from Creately | Comment »

Plan your website before you start building it : Phases of website designing

Considering the rationality of creating a website is important, but it is even more important to have a clear plan for the website designing before that. The more planning you do, the easier it is to make decisions. Not taking enough time to plan and jumping straight to website development is one of the biggest mistakes you can make when designing a new website.

The different stages of website designing

Define the website plan

Answering some basic questions and refining them into a plan is an important process in understanding the web-site’s objectives and requirements. For example – What are we aiming to achieve through the website? What will the website do? Who is our target audience and how do we attract visitors?

Sketch out your website map

After brainstorming on the basic aims of your website, you have to understand the overall organization of the website. A website map is a desperately needed tool for planning and designing web sites. You can get a pictorial representation of your website architecture by sketching out a sitemap as it helps in creating coherent navigation paths for users to follow through the website. It shows the logical hierarchy (including primary navigation through to the secondary or sub-navigation) of the different pages within your website.

Usability of your website has to be kept under constant consideration as part of your planning. Your site should not create confusion in the minds of the visitors. You should make sure the navigation between pages is clear, and it does not confuse the visitor about what to do next. With a clear website architecture map in place, you can logically understand and consider how your users will navigate through the site, then tailor content to them.

</a>

Make your wireframe prototype

Wireframes are fundamental line drawings that allow you and your client to focus on the layout of the website. They are prototype models built for testing purposes. Wireframes show you how your website will look and feel so you can identify the functionality of the website even before engaging in development.

</a>

If you are ever wondering on how to get started, you can try a sheet of paper and a pen or simply sign up for Creately and create your sitemap in the Cloud with collaboration built in. Hope you liked this post, if you got anything else to add, please write to us or leave a comment below.

Posted via email from Creately | Comment »

Part 2 : 15 Mistakes you would unintentionally make with Flowcharts

This is the final post of our two-part series on FlowchartsPart 1 can be found here. Remember what really matters is having clarity and attention to detail when drawing flowcharts. In keeping with this train of thought, check out the rest of the interesting mistakes that we have compiled below.

9. Define alternate paths clearly

In certain flowcharts, processes do tend to fork. For the sake of clarity, it is best that you specify whether one branch needs to be followed or all of them.

 

 

 

 

 

10. Beware of loops

Processes may not run forever. However, make sure that you do document processes that may be too excessive that it affects the clarity of the flowchart.

 

 

 

 

 

 

11. Be descriptive

It is suggested that you use a footnote, a call out or even a separate document to offer more detail for those process step descriptions that may need more detail.

 

 

 

 

12. Use a flowchart key

One of the best practices of using flowcharts is to have a flowchart key describing the symbols that are used.

 

 

 

13. Battling inaccuracy

When drawing flowcharts, remember that verifying the flowchart steps is critical to avoid any inaccuracies.

 

 

 

14. Stick to one level of detail

It’s best that you stick to a certain level of detail, e.g. a high-level, mid-level (like the diagram above) or detailed flowchart.

15. Don’t leave room for any uncertainty

Planning ahead would mean that you avoid any unwanted mistakes. So ensure that you ask questions like, “What happens next?”, “Is there a decision made now?”, and “Has the process description been complete?”

 

 

 

 

 

We hope this series has been useful. For more information on flowcharting, you can check out our site. If you got any queries or comments, please do get through to us.

 

Posted via email from Creately | Comment »

PART 2: What type of UML diagram should you be using?

As promised here is Part 2 of our UML post. As mentioned previously, today I will be giving you a short and sweet run through of Behavioural Diagrams, which also forms a vast part of UML diagrams. To put it simply behavioral diagrams capture the dynamic aspect of the system. The word “dynamic” in this context can be described as being the changing parts of the system.

Unlike Structural Diagrams, Behavioural Diagrams can be subdivided into five types of diagrams.

Use Case Diagrams

Use case diagrams consist of a set of use cases, actors and their respective relationships. These diagrams seek to represent the use case view of a system. A diagram of this type illustrates the functionality of a system. So a use case diagram is utilized to represent the relationships that exist among the functionalities and their controllers (internal/external), which are known as actors.

Sequence Diagrams

A sequence diagram is also commonly known as an interaction diagram. A diagram of this type deals with certain sequences, which are messages that flow from a certain object to another. It is important to note that the interaction that is present between the components of a system is significant from an implementation and execution perspective. So a sequence diagram is utilized to visualize the sequence of calls in a system when it comes to performing a functionality that is specific.

Collaboration Diagram

Another form of an interaction diagram is known as a collaboration diagram. This type of a diagram illustrates the structural organization of the system and the messages that are sent or received. These structural organizations consists of various objects and links. The specific aim of a collaboration diagram is to visualize the organization of objects and their respective interaction.

State Chart Diagram

A state chart diagram is utilized to illustrate the event driven state change of a system. It basically describes the state change of a class and interface amongst other things. A state chart diagram is used to visually represent the reaction of a system through internal or external factors.

 

Activity Diagram

An activity diagram would illustrate the flow of control in the system. This means that such a diagram consists of both activities and links. The flow is usually sequential, concurrent or even branched. The activities are the functions within a system. Ideally, activity diagrams are usually used to illustrate the flow of controls in a given system. Such diagrams are excellent when it comes to have an idea of knowing how a system will work when it is executed.


So that pretty much concludes a basic assessment of the various types of UML diagrams. I hope both posts were useful in enhancing your knowledge when it comes to software design and communication. As always, I encourage you to get in touch with us with any issues you may have with diagramming (general or specific). While I think we have substantially covered UML as a subject in this space, expect to see some interesting and thought-provoking posts starting Monday fromIndu. Till then – Happy Diagramming!

Posted via email from Creately | Comment »

10 common mistakes to avoid in Sequence Diagrams

When talking about UML diagrams and, in fact, sequence diagrams you will realize that attention-to-detail is mandatory. We’ve tapped the knowledge present in house to identify 10 of the most common mistakes that designers make when it comes to constructing sequence diagrams. We hope this knowledge helps you when it comes to making quality sequence diagrams. Have a run through and let us know what you think.

1. Get rid of unnecessary detail

A typical mistake that software diagrammers usually make is adding too much detail when working with sequence diagrams. Say your code has quite a few branches in a particular method; this does not mean that you should include each one within the same diagram using block or scenario elements. The issue is that adding too much detail ends up with too much clutter thereby making the diagrams more difficult to read and comprehend. The same could be said when it comes to sequence diagrams at the system level. Main thing is to keep all  your diagrams clutter-free, as shown below.

2. Messages should (more often than not) run from left to right

When it comes to sequence diagrams, the message flow should start from the top left corner. Since it’s a practice in western culture to read from the left to the right, all classifiers such as actors, classes, objects and use cases, should follow this route. However, there are certain exceptions when it comes to this logical flow, for example, when objects pairs invoke operations on each other.

3. Sequence diagrams that are obsolete and out of date

Outdated sequence diagrams that are not relevant when compared to the interfaces, actual architecture or behavior of the system, become a pain since they stop offering any documentation value. This is another reason why high-level sequence diagrams work much better than low-level diagrams. The former tends to remain appropriate even as the application details are changed. They may even need only a few modifications over time in order to remain current.

4. Avoid sequence diagrams if you are dealing with simple logic

One of the most common mistakes that most of us do is waste precious time doing too many sequence diagrams for every single use case, one for the basic course of action and one for each alternate course.  It is best to design a sequence diagram only when you have complex logic that you have to deal with. If the logic is simple and easy to assimilate, having a sequence diagram would not really add any value.

5. Provide a visual trace between the use case text and the message arrows

Each sentence within the use case text ideally should have some blank space around it. Each sentence should also be in visual harmony with the message that is in agreement with the particular behavior. This will enable people reading the diagram to easily see how the system will accomplish what the use case showcases.

6. Keep your sequence diagrams abstract without the need for plumbing

When it comes to robustness diagrams, there really is no need to show plumbing, since these diagrams reflect a design view that is preliminary. Having said that it is pertinent to highlight the real design in detail since sequence diagrams are the last stop before coding.

7.  Consider behavior allocation, seriously

As most diagrammers are aware, the sequence diagram is the main vehicle when it comes to making behavior allocation decisions. You use them to assign operations to your classes as you go. Behavior allocation especially when it comes to deciding what operations belong to what classes is very important in the ICONIX approach.

8. Include the use case text on the sequence diagram

Writing the text for the use case in the margin of the sequence diagram provides a trace from the design back to your requirements. In short, the diagram should match the narrative flow of the associated use case.

9. Follow the basics when it comes to allocating behavior by using message arrows

An object ideally should only possess a single personality. What this means is that a class should ideally focus on a set of behaviors that are strongly related. In other words, state objects need to be cohesive and coupled loosely. Other aspects that you need to concentrate on include things like reusability. What this means is that when you have objects and classes that are general, you could resuse then for other projects. Also remember that methods are assigned to objects, make sure you make it a habit to ask whether there is a decent fit between the method and object.

10. Consider the origins of the message arrows carefully

This is a no brainer. You do have to see which object is in control at whatever time so that it is easy to see the flow of control. While the arrows are certainly important when it comes to robustness diagrams, they are more important when it comes to sequence diagrams. Remember that the messages that are present between objects determines the operations on the associated classes.

Posted via email from Creately | Comment »

Creately just got faster and more responsive

Creately was always about intuitive diagramming that was fast and smart. We’ve always made it a point to keep upgrading our systems to ensure that you face no delay at all when it comes to creating those all-important diagrams. So as tweeted by Nick yesterday, you should notice an increase is speed when it comes to certain functions.

A faster app means a happier diagrammer

Some of the improvements also includes a faster response time when it comes to functions such as Create, Save, Open, Rename, Copy, and Delete diagrams, amongst many others. Other improvements include a quick response to opening the document manager and selecting as much as five diagrams at once! It’s a no brainer as to how this could translate to real-world benefits.

We reckon our performance upgrade would save you a whole lotta time, thanks to time being reduced when it comes to the usual diagramming functions such as opening documents, creating diagrams, saving and publishing them.  But there’s more reason to cheer, our performance upgrade has inherently improved the response time for Central Desktop as well. Read on to see how.

Central Desktop is fast, real fast

As most users may already know, Central Desktop offers a complete Software-as-a-Service (SaaS) collaboration platform, which allows business teams to communicate and collaborate online. This collaborative workspace gets more powerful now with Creately’s integration into Central Desktop’s platform that offers customers the ability to translate their ideas graphically.

The new online diagramming feature makes it extremely easy for users to create a visual diagram and embed that into online documents, wikis and discussions with just a few clicks. The good news is that this process has got quicker compared to what it was.

Access our Public Diagrams faster!

A real testament as to how versatile and easy-to-use Creately is would be the vast amount of diagrams drawn by our users. Currently we have in excess of 100,000 diagrams that encompass everything from Block Diagrams to UML Diagrams. This page has been a constant source of inspiration for new diagrammers and there are many diagrams that could be graded as Novice at one end to Professional at the other end. Despite having thousands of diagrams, the time taken to load a page is now quicker than what it was. You can click a diagram to view it on the Creately Diagram Viewer, which is also fairly fast now.

There are more improvements along the way (very soon!) in the form of bug fixes. We appreciate all the bug reports you guys have sent us and we’re hard at work to make sure Creately is that much smarter to work on. We’re all for constant improvement; if there are certain things you want improved, you’re more than welcome to pop us a tweet or send us an email.  It’s true what they say, sometimes it’s those small details that can make a world of difference.

Diagram references: http://www.psdgraphics.com/icons/psd-red-speedometer-icon/

Tags: announcement, collaboration, Customer First, Features

via creately.com

Posted via email from Creately | Comment »

A comparison infographic on Visio, Smart Draw, Creately, Omnigraffle and Gliffy

Keeping in line with that proverbial cliche, “a picture is worth a thousand words”, we did a nifty infographic on five of the most well known diagramming tools out there. So find out what’s hot and what’s not below.

Tags: collaboration, competitors, diagrams, Features, Smart Draw, Visio

via creately.com

Posted via email from Creately | Comment »

How Japanese startup, Flutterscape, used Creately to integrate with partners faster

FlutterScape is a Japanese Social Marketplace which brings together sellers and buyers together in a casual and collaborative way. FlutterScape has a wide collection of Japanese items “fluttered” directly from all around Japan by english-proficient sellers that are passionate about Japan. You can basically browse a wide variety of items that include manga to bento boxes, cute iPhone cases, geisha dolls, and so much more. FlutterScape is a small team with 3 internet enthusiasts who are passionate about improving the customer experience of both sellers and buyers.

It is a known fact that visual communication is one of the best ways of conveying abstract ideas across to the team. Takehiro Kakiyama, Co-founder and CEO of FlutterScape, had to visualize the business model, website eco-system and other logic to his team and clients. Having used PowerPoint initially, he wasn’t too happy – “It was really difficult for me to come up with a nice looking chart and flow diagram; it was time consuming and unfriendly in terms of sharing and collaboration. So (I) google(d) some keywords and learned about Creately“.

With Creately’s online collaboration capability inviting team members and clients to collaborate on diagrams to review, comment and update diagrams is so easy. When the FlutterScape team considered outsourcing their logistic layer, they negotiated the international shipping fee with possible logistic partners. The rate depended on the amount of operation they had to do for shipping packages.

Shipment required many use cases, so they used Creately to map out a shipment process flowchart based on the business model. They shared this flowchart model with the manager of the logistic company; on which he added/removed/suggested use cases based on their capability and experience. Then the FlutterScape team validated all the use cases – in case they failed to dispatch the package ‘cos its over-sized; or in case they shipped out the wrong article and the customer returns it to the logistic partner. In order to determine a smooth and effective process flow between FlutterScape and their logistic partner, they had to draw a shipment process flow beforehand.

Creately’s online diagramming platform helped the team collaborate back and forth online and determine the international shipping rate based on the process flow.

Below is a simplified version of the Shipment Process Flow.

“Creately has contributed to my efficiency whereby I saved a lot of time, leaving time to work on something else while Ari, my co-founder, and I were super hectic taking care of multiple tasks at the pre-launch stage. Thank you, Creately team!” concluded Takehiro Kakiyama. “Creately is a very user-friendly and smart service that really hits the spot. Creately is like “love”, so deep that the more you dig in, the more you can find out! “

Tags: diagrams, examples, flowcharts, workflow

via creately.com

Posted via email from Creately | Comment »