All you Need to Know about Flowcharting

We thought of breaking up the usual string of UML diagram posts with a simple post onFlowcharting. If you have been a regular reader of our blog, you would have been privy to a great deal of information on flowcharts, like this one – Learn to unleash the power of flowcharts. While flowcharts are excellent when it comes to business, it would be prudent at some point to pay attention to some of the best practices with regard to flowcharts, in general.

       

You’ve probably already seen this title in one form or the other, but the truth is that there are some uses that need to be considered besides the obvious. As you may be aware, a flowchart is a visual representation, which shows you a sequence of operations that are to be performed in order to get the solution to a problem. While flowcharts may be applied to computer solutions, they can be used for a myriad of processes, as well. Flowcharts are an excellent tool when it comes to business, education and even something as myriad as a recipe or a how-to guide.

Misunderstanding flowchart symbols is certainly something that could leave you in a quandary, especially if you are not too aware of the relevance of flowcharting symbols. While there is no strict protocol as such when it comes to using boxes, circles, diamonds or such symbols in drawing a flowchart, they do help you to illustrate and make sense of the types of events in the chart with more clarity. Described below are standard symbols along with a visual representation right below.

  1. Data object – The Data object, often referred to as the I/O Shape shows the Inputs to and Outputs from a process.
  2. Rectangle - This is used to represent an event which is controlled within the process. Typically this will be a step or action which is taken.
  3. Diamond - Used to represent a decision point in the process. Typically, the statement in the symbol will require a `yes’ or `no’ response and branch to different parts of the flowchart accordingly.
  4. Document - The Document object is a rectangle with a wave-like base. This shape is used to represent a Document or Report in a process flow.
  5. Rounded box – This is used to represent an event which occurs automatically. Such an event will trigger a subsequent action, for example `receive telephone call, or describe a new state of affairs.
  6. Stored data - This is a general data storage object used in the process flow as opposed to data which could be also stored on a hard drive, magnetic tape, memory card, of any other storage device.
  7. Manual input - This object is represented by rectangle with the top sloping up from left to right. The Manual Input object signifies an action where the user is prompted for information that must be manually input into a system.
  8. Direct data – Direct data object in a process flow represents information stored which can be accessed directly. This object represents a computer’s hard drive.
  9. Circle - Used to represent a point at which the flowchart connects with another process. The name or reference for the other process should appear within the symbol.
  10. Internal storage – This is an object which is commonly found in programming flowcharts to illustrate the information stored in memory, as opposed to on a file.
  11. Predefined process – This allows you to write one subroutine and call it as often as you like from anywhere in the code.

While learning the various symbols that are associated with flowcharts are rather important, you need to also remember that there are certain guidelines in flowcharting that deserves some respect as well. The following are some guidelines in flowcharting:

1. Proper Form is Essential: In drawing a proper flowchart, all necessary requirements should be listed out in logical order.

2. Clarity is Paramount: The flowchart should be clear, neat and easy to follow. There should not be any room for ambiguity in understanding the flowchart.

3. Stick to the Right Direction: The usual direction of the flow of a procedure or system is from left to right or top to bottom.

4. Standard for Flow Lines: Ideally just one flow line should come out from a process symbol.  While only one flow line should enter a decision symbol, around three flow lines (depending on the answer) should leave the decision symbol. Additionally, only one flow line is utilized together with a terminal symbol.

5. Be Concise, not Copious: Write within standard symbols briefly.

6. Logic precedes Everything: If you are dealing with a complex flowchart then use connector symbols to minimize the number of flow lines. Ditch the intersection of flow lines to ensure effectiveness and better communication. It is imperative that your flowchart has a logical start and finish.

That wraps up this post, in the meanwhile, do get in touch with us here, if you do have any queries. For more interesting tips and trends on diagramming, stay tuned to this space.

Posted via email from Creately | Comment »

Say hello to our versatile 3D objects!

As promised in our last post, where we unveiled Creately’s forward thinking Text capabilities, we are now thrilled to offer a fresh new perspective, in this post, on our intuitive KObjects, namely 3D versions of the CubeCylinder and Cone. So why is this such BIG news? We’ve listed ‘em out for you below.

1. Cool Features

   

What we actually did was to create 3D objects that have a list of features associated with it. As you can see below, you can change the Position & Size of these objects along with the 3D Angle andCube Depth as well.

    

2. Such versatile Fun!

Click and drag either one of the 3D objects onto the editor and you are sure to have oodles of fun, creating and designing diagrams, like a rocket blasting off into space, a pencil and even the Tower of Hanoi below.

We’ve already established that creating complex diagrams, such as UML diagramswireframes andmockups are easy. But Creately has also quite a bit of a fun side to it, as seen by the screen shots above.

 

3. Better usability = Simple but Beautiful Diagrams

What better way to highlight this sentiment than to draw a system architecture diagram. Having a 3D look and feel to the whole diagram is certainly something that makes it look better, more interesting and beautiful.


That wraps up this post, in the meanwhile, do spread the word to your friends and peers and other aficionados of diagramming. For more interesting announcements and tips and trends on diagramming, stay tuned to this space.

Posted via email from Creately | Comment »

Creately offers forward thinking Text capabilities!

We break our usual slew of knowledge-based posts with a very exciting announcement today. With the latest Creately release, we’ve added on some really smart features that is sure to make your diagramming experience easier and rewarding. While we do have two awesome features to talk about, we’ll concentrate on just one in this post, with the next feature described in a subsequent post later on, during this week. So without further ado, discover Creately’s multiple text feature on lines! To help you understand the potential this gives you, scour through the benefits illustrated below.

    

1. Add multiple text to lines

To make the whole process of plugging in extra text has been made easier. So easy, in fact, all you need to do is double click on the relevant line to create text. Even cooler is that you can create any amount of text on the line by double clicking at any point. Plus, editing text is also an easy endeavor; all it requires is double-clicking on the text you want to edit. Observe this super-intuitive convenience in action below.

2. Easy drag functionality

So, now you can create any amount of multiple text on lines. But we’ve also taken pains to ensure that there is unhindered usability afforded with this feature as well. With most diagrams precision is key, which is why clicking and dragging text anywhere on the line to position and place your text makes the art of diagramming so much easier with Creately.

3. Experience multiplicity with UML associate connector type

While multiple text can be added onto any type of line in a variety of diagrams, we’ve also ensured that there is multiplicity with regard to associate connector type in UML Class Diagrams. So, now there is no need to plug in awkward and mismatched textboxes when all you need to do is plug in multiplicity with just a click or two. Simply change the type of connector when connecting two Class objects to “Associate” and the multiplicity options will be available.

There you have it. A simple feature that is packed with a level of potency that is sure to make diagramming faster, easier, more intuitive and versatile. Remember to spread the good news!

Posted via email from Creately | Comment »

Beyond the Basics of Sequence Diagrams: Part 3

We got the final part of this series right here. While we did spend some time discussing Gates and its use or relevance to Sequence Diagrams, we now concentrate on just two elements known as Combined fragments.

Combined fragments (break and parallel)

      If you do recall, back in the post called – The Basics & the Purpose of Sequence Diagrams ~ Part 2–  there was information on combined fragments known as “alternative,” “option,” and “loop.” While these combined fragments are what most people will utilize the most, there are other combined fragments, such as  break and parallel, which a large share of people will find useful.

Break

 

The break combined fragment is similar to the option combined fragment. There are two exceptions, though. First, a break’s frame has a name box stating “break” instead of “option.” Second, when a break combined fragment’s message is to be executed, the enclosing interaction’s remainder messages will not be executed because the sequence breaks out of the enclosing interaction.

Breaks are utilized to model exception handling. The figure below uses a break combination fragment since it treats the balance < amount condition as an exception instead of as an alternative flow. When the sequence gets to the return value “balance,” it checks to see if the balance is less than the amount. If the balance is not less than the amount, the next message sent is the addDebitTransaction message, and the sequence continues as normal. However, in cases where the balance is less than the amount, then the sequence enters the break combination fragment and its messages are sent. Once all the messages in the break combination have been sent, the sequence exits without sending any of the remaining messages (e.g., addDebitTransaction).

An important thing to note about breaks is that they only cause the exiting of an enclosing interaction’s sequence and not necessarily the complete sequence depicted in the diagram. Where there is a break combination, which is part of an alternative or a loop, then only the alternative or loop is exited.

Parallel

 

When the processing time needed to finish portions of a complex task takes longer than previously thought, some systems handle parts of the processing in tandem. The parallel combination fragment element should be used when creating a sequence diagram that shows parallel processing activities.

The parallel combination fragment is drawn using a frame, and you place the text “par” in the frame’s namebox. You then break up the frame’s content section into horizontal operands separated by a dashed line. Each operand in the frame represents a thread of execution done in parallel.

While the figure below may not illustrate the best computer system example of an object doing activities in parallel, it offers an easy-to-understand example of a sequence with parallel activities. The sequence goes like this: A hungryPerson sends the cookFood message to the oven object. When the oven object receives that message, it sends two messages to itself at the same time (nukeFood and rotateFood). After both of these messages are done, the hungryPerson object is returned yummyFood from the oven object.

All things considered, remember that the sequence diagram is a versatile diagram that can be used to document a system’s needs and to flush out a system’s design. The reason the sequence diagram is so useful is because it shows the interaction logic between the objects in the system in the time order that the interactions take place. We, of course, explained all this from the very first post we put out in the first series we did on these diagrams - The Basics & the Purpose of Sequence Diagrams ~ Part 1. We really do hope you found this series useful. Moreover, we would like to invite you to let us in on any new topics you would like us to tackle.

Posted via email from Creately | Comment »

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 »

All kinds of UML Diagram Templates from Creately!