+ All Categories
Home > Documents > Software Development Diagrams

Software Development Diagrams

Date post: 07-Apr-2018
Category:
Upload: tikajit-rai
View: 222 times
Download: 0 times
Share this document with a friend

of 32

Transcript
  • 8/6/2019 Software Development Diagrams

    1/32

    SOFTWARE DEVELOPMENT DIAGRAMS

    What is UML?UML stands for Unified Modeling Language. This object-oriented system ofnotation has evolved from the work ofGrady Booch, James Rumbaugh, Ivar

    http://www.smartdraw.com/tutorials/software/booch.htmhttp://www.smartdraw.com/tutorials/software/omt.htmhttp://www.smartdraw.com/tutorials/software/oose.htmhttp://www.smartdraw.com/tutorials/software/booch.htmhttp://www.smartdraw.com/tutorials/software/omt.htmhttp://www.smartdraw.com/tutorials/software/oose.htm
  • 8/6/2019 Software Development Diagrams

    2/32

  • 8/6/2019 Software Development Diagrams

    3/32

    Class Diagrams

    Class diagrams are the backbone of almostevery object oriented method, including UML.

    They describe the static structure of a system.

    Package DiagramsPackage diagrams are a subset of class

    diagrams, but developers sometimes treatthem as a separate technique. Package

    diagrams organize elements of a system intorelated groups to minimize dependencies

    between packages.

    Object DiagramsObject diagrams describe the static structureof a system at a particular time. They can be

    used to test class diagrams for accuracy.

    Use Case Diagrams

    Use case diagrams model the functionality ofsystem using actors and use cases.

    http://www.smartdraw.com/tutorials/software-uml/uml2.htm#whatclasshttp://www.smartdraw.com/tutorials/software-uml/uml3.htm#whatpackhttp://www.smartdraw.com/tutorials/software-uml/uml3.htm#whatobjhttp://www.smartdraw.com/tutorials/software-uml/uml4.htm#whatusehttp://www.smartdraw.com/tutorials/software-uml/uml4.htm#whatusehttp://www.smartdraw.com/tutorials/software-uml/uml3.htm#whatobjhttp://www.smartdraw.com/tutorials/software-uml/uml3.htm#whatpackhttp://www.smartdraw.com/tutorials/software-uml/uml2.htm#whatclasshttp://www.smartdraw.com/tutorials/software-uml/uml2.htm#whatclasshttp://www.smartdraw.com/tutorials/software-uml/uml3.htm#whatpackhttp://www.smartdraw.com/tutorials/software-uml/uml3.htm#whatobjhttp://www.smartdraw.com/tutorials/software-uml/uml4.htm#whatuse
  • 8/6/2019 Software Development Diagrams

    4/32

    What is a UML Class Diagram?Class diagrams are the backbone of almost every object-oriented methodincluding UML. They describe the static structure of a system.

    Basic Class Diagram Symbols and NotationsClasses represent an abstraction of entities with common characteristics.Associations represent the relationships between classes.

    Classes

    Illustrate classes with rectanglesdivided into compartments. Place the

    name of the class in the first partition(centered, bolded, and capitalized), listthe attributes in the second partition,and write operations into the third.

    Learn how to create this symbol.

    Active ClassActive classes initiate and control theflow of activity, while passive classesstore data and serve other classes.Illustrate active classes with a thickerborder.

    Visibility

    Use visibility markers to signify whocan access the information contained

    within a class. Private visibility hidesinformation from anything outside theclass partition. Public visibility allows allother classes to view the markedinformation. Protected visibility allowschild classes to access information theyinherited from a parent class.Learn how to edit text.

    Sequence DiagramsSequence diagrams describe interactionsamong classes in terms of an exchange ofmessages over time.

    Collaboration Diagrams

    Collaboration diagrams represent interactionsbetween objects as a series of sequenced

    messages. Collaboration diagrams describeboth the static structure and the dynamic

    behavior of a system.

    Statechart DiagramsStatechart diagrams describe the dynamicbehavior of a system in response to external

    stimuli. Statechart diagrams are especiallyuseful in modeling reactive objects whosestates are triggered by specific events.

    Activity Diagrams

    Activity diagrams illustrate the dynamic natureof a system by modeling the flow of control

    from activity to activity. An activity representsan operation on some class in the system that

    results in a change in the state of the system.Typically, activity diagrams are used to modelworkflow or business processes and internaloperation.

    Component Diagrams

    http://www.smartdraw.com/tutorials/software-uml/uml4.htm#whatseqhttp://www.smartdraw.com/tutorials/software-uml/uml4.htm#whatseqhttp://www.smartdraw.com/tutorials/software-uml/uml4.htm#whatseqhttp://www.smartdraw.com/tutorials/software-uml/uml4.htm#whatseqhttp://www.smartdraw.com/tutorials/software-uml/uml4.htm#whatseqhttp://www.smartdraw.com/tutorials/software-uml/uml4.htm#whatseqhttp://www.smartdraw.com/tutorials/software-uml/uml5.htm#whatcollhttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#tableshttp://www.smartdraw.com/tutorials/software-uml/uml5.htm#whatstatehttp://www.smartdraw.com/tutorials/software-uml/uml5.htm#whatacthttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml4.htm#whatseqhttp://www.smartdraw.com/tutorials/software-uml/uml5.htm#whatcollhttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#tableshttp://www.smartdraw.com/tutorials/software-uml/uml5.htm#whatstatehttp://www.smartdraw.com/tutorials/software-uml/uml5.htm#whatacthttp://www.smartdraw.com/tutorials/software-uml/uml6.htm#whatcomponenthttp://www.smartdraw.com/tutorials/software-uml/uml5.htm#whatacthttp://www.smartdraw.com/tutorials/software-uml/uml5.htm#whatstatehttp://www.smartdraw.com/tutorials/software-uml/uml5.htm#whatcollhttp://www.smartdraw.com/tutorials/software-uml/uml4.htm#whatseqhttp://www.smartdraw.com/tutorials/software-uml/uml4.htm#whatseqhttp://www.smartdraw.com/tutorials/software-uml/uml5.htm#whatcollhttp://www.smartdraw.com/tutorials/software-uml/uml5.htm#whatstatehttp://www.smartdraw.com/tutorials/software-uml/uml5.htm#whatacthttp://www.smartdraw.com/tutorials/software-uml/uml6.htm#whatcomponenthttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#tableshttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtext
  • 8/6/2019 Software Development Diagrams

    5/32

    AssociationsAssociations represent staticrelationships between classes. Placeassociation names above, on, or belowthe association line. Use a filled arrowto indicate the direction of therelationship. Place roles near the end ofan association. Roles represent the way

    the two classes see each other.Note:It's uncommon to name both the

    association and the class roles.Learn how to connect two classes.

    Multiplicity (Cardinality)Place multiplicity notations near the

    ends of an association. These symbolsindicate the number of instances of oneclass linked to one instance of the other

    class. For example, one company willhave one or more employees, but each

    employee works for one company only.

    Complex Constraint

    Constraint

    Place constraints inside curly braces {}.

    Simple Constraint

    organ za on o p ys ca so ware componen s,including source code, run-time (binary) code,

    and executables.

    Deployment DiagramsDeployment diagrams depict the physicalresources in a system, including

    http://www.smartdraw.com/tutorials/software-uml/uml6.htm#whatdeplhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml6.htm#whatdeplhttp://www.smartdraw.com/tutorials/software-uml/uml6.htm#whatdeplhttp://www.smartdraw.com/tutorials/software-uml/uml6.htm#whatdeplhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#conn
  • 8/6/2019 Software Development Diagrams

    6/32

    Composition and Aggregation

    Composition is a special type ofaggregation that denotes a strong

    ownership between Class A, the whole,and Class B, its part. Illustrate

    composition with a filled diamond.Use a hollow diamond to represent asimple aggregation relationship, inwhich the "whole" class plays a moreimportant role than the "part" class,but the two classes are not dependenton each other. The diamond end inboth a composition and aggregationrelationship points toward the "whole"class or the aggregate.

    GeneralizationGeneralization is another name forinheritance or an "is a" relationship. Itrefers to a relationship between twoclasses where one class is a specializedversion of another. For example, Hondais a type of car. So the class Hondawould have a generalization

    relationship with the class car.

    In real life coding examples, thedifference between inheritance andaggregation can be confusing. If youhave an aggregation relationship, theaggregate (the whole) can access only

    the PUBLIC functions of the part class.On the other hand, inheritance allows

    the inheriting class to access both thePUBLIC and PROTECTED functions of

    the superclass.

    Learn how to draw a generalizationrelationship.

    What is a UML Package Diagram?Package diagrams organize the elements of a system into related groups tominimize dependencies among them

    http://www.smartdraw.com/tutorials/software-uml/uml9.htmhttp://www.smartdraw.com/tutorials/software-uml/uml9.htmhttp://www.smartdraw.com/tutorials/software-uml/uml9.htmhttp://www.smartdraw.com/tutorials/software-uml/uml9.htm
  • 8/6/2019 Software Development Diagrams

    7/32

    Basic Package Diagram Symbols and Notations

    PackagesUse a tabbed folder to illustrate packages.Write the name of the package on the tab orinside the folder. Similar to classes, you canalso list the attributes of a package.

    Learn how to resize a grouped object like apackage.

    VisibilityVisibility markers signify who can access theinformation contained within a package.Private visibility means that the attribute orthe operation is not accessible to anythingoutside the package. Public visibility allows anattribute or an operation to be viewed by otherpackages. Protected visibility makes anattribute or operation visible to packages that

    inherit it only.

    Learn how to edit text on a symbol.

    DependencyDependency defines a relationship in whichchanges to one package will affect anotherpackage. Importing is a type of dependency

    that grants one package access to the contentsof another package.

    Learn how to draw dependencies and add

    arrows to your diagram.

    What is a UML Object Diagram?Object diagrams are also closely linked to class diagrams. Just as an object is

    http://www.smartdraw.com/tutorials/software-uml/uml10.htm#grouphttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#grouphttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#addarrhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#addarrhttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#grouphttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#grouphttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#addarrhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#addarr
  • 8/6/2019 Software Development Diagrams

    8/32

    an instance of a class, an object diagram could be viewed as an instance of aclass diagram. Object diagrams describe the static structure of a system at aparticular time and they are used to test the accuracy of class diagrams.

    Basic Object Diagram Symbols and Notations

    Object namesEach object is represented as a rectangle,

    which contains the name of the object and itsclass underlined and separated by a colon.

    Learn how to edit text on a symbol.

    Object attributesAs with classes, you can list object attributesin a separate compartment. However, unlikeclasses, object attributes must have valuesassigned to them.

    Active objectObjects that control action flow are calledactive objects. Illustrate these objects with athicker border.

    MultiplicityYou can illustrate multiple objects as onesymbol if the attributes of the individualobjects are not important.

    http://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtext
  • 8/6/2019 Software Development Diagrams

    9/32

    LinksLinks are instances of associations. You candraw a link using the lines used in classdiagrams.

    Learn how to connect objects.

    Self-linkedObjects that fulfill more than one role can beself-linked. For example, if Mark, anadministrative assistant, also fulfilled the roleof a marketing assistant, and the twopositions are linked, Mark's instance of the

    two classes will be self-linked.What is a UML Use Case Diagram?Use case diagrams model the functionality of a system using actors and usecases. Use cases are services or functions provided by the system to its

    users.

    Basic Use Case Diagram Symbols and Notations

    SystemDraw your system's boundries using a

    rectangle that contains use cases. Placeactors outside the system's boundries.

    Use CaseDraw use cases using ovals. Label with ovalswith verbs that represent the system'sfunctions.

    http://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#conn
  • 8/6/2019 Software Development Diagrams

    10/32

    ActorsActors are the users of a system. When onesystem is the actor of another system, labelthe actor system with the actor stereotype.

    RelationshipsIllustrate relationships between an actor and

    a use case with a simple line. Forrelationships among use cases, use arrows

    labeled either "uses" or "extends." A "uses"

    relationship indicates that one use case isneeded by another in order to perform atask. An "extends" relationship indicatesalternative options under a certain use case.Learn how to draw relationships.

    What is a UML Sequence Diagram?Sequence diagrams describe interactions among classes in terms of anexchange of messages over time.

    Basic Sequence Diagram Symbols and Notations

    Class roles

    Class roles describe the way an object willbehave in context. Use the UML object symbolto illustrate class roles, but don't list objectattributes.Learn how to edit text on a symbol.

    http://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtext
  • 8/6/2019 Software Development Diagrams

    11/32

  • 8/6/2019 Software Development Diagrams

    12/32

    LifelinesLifelines are vertical dashed lines that indicatethe object's presence over time.Learn how to attach activation boxes tolifelines.

    Destroying ObjectsObjects can be terminated early using an arrow

    labeled "< < destroy > >" that points to an X.

    LoopsA repetition or loop within a sequence diagramis depicted as a rectangle. Place the condition

    for exiting the loop at the bottom left corner in

    square brackets [ ].Learn how to arrange objects on a page.

    What is a UML Collaboration Diagram?A collaboration diagram describes interactions among objects in terms of

    http://www.smartdraw.com/tutorials/software-uml/uml8.htm#dropshaphttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#dropshaphttp://www.smartdraw.com/tutorials/software-uml/uml11.htm#sendbackhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#dropshaphttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#dropshaphttp://www.smartdraw.com/tutorials/software-uml/uml11.htm#sendback
  • 8/6/2019 Software Development Diagrams

    13/32

    sequenced messages. Collaboration diagrams represent a combination ofinformation taken from class, sequence, and use case diagrams describingboth the static structure and dynamic behavior of a system.

    Basic Collaboration Diagram Symbols and Notations

    Class rolesClass roles describe how objects behave. Use the

    UML object symbol to illustrate class roles, but don'tlist object attributes.

    Association rolesAssociation roles describe how an association willbehave given a particular situation. You can drawassociation roles using simple lines labeled with

    stereotypes.Learn how to draw associations.

    MessagesUnlike sequence diagrams, collaboration diagrams donot have an explicit way to denote time and insteadnumber messages in order of execution. Sequence

    numbering can become nested using the Deweydecimal system. For example, nested messages

    under the first message are labeled 1.1, 1.2, 1.3,

    and so on. The a condition for a message is usuallyplaced in square brackets immediately following thesequence number. Use a * after the sequence

    number to indicate a loop.Learn how to add arrows to your lines.

    What is a UML Statechart Diagram?A statechart diagram shows the behavior of classes in response to externalstimuli. This diagram models the dynamic flow of control from state to statewithin a system.

    Basic Statechart Diagram Symbols and Notations

    StatesStates represent situations during the lifeof an object. You can easily illustrate astate in SmartDraw by using a rectanglewith rounded corners.

    http://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#addarrhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#addarr
  • 8/6/2019 Software Development Diagrams

    14/32

    Transition

    A solid arrow represents the pathbetween different states of an object.

    Label the transition with the event thattriggered it and the action that results

    from it.Learn how to draw lines and arrows inSmartDraw.

    Initial StateA filled circle followed by an arrowrepresents the object's initial state.Learn how to rotate objects.

    Final StateAn arrow pointing to a filled circle nestedinside another circle represents the

    object's final state.

    Synchronization and Splitting ofControlA short heavy bar with two transitionsentering it represents a synchronizationof control. A short heavy bar with twotransitions leaving it represents a splittingof control that creates multiple states.

    What is a UML Activity Diagram?An activity diagram illustrates the dynamic nature of a system by modelingthe flow of control from activity to activity. An activity represents an

    operation on some class in the system that results in a change in the state ofthe system. Typically, activity diagrams are used to model workflow or

    business processes and internal operation. Because an activity diagram is aspecial kind of statechart diagram, it uses some of the same modeling

    conventions.

    Basic Activity Diagram Symbols and Notations

    http://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml11.htm#rotateobjhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml11.htm#rotateobj
  • 8/6/2019 Software Development Diagrams

    15/32

    Action statesAction states represent the noninterruptibleactions of objects. You can draw an actionstate in SmartDraw using a rectangle withrounded corners.

    Action Flow

    Action flow arrows illustrate the relationshipsamong action states.

    Learn how to draw action flows.

    Object FlowObject flow refers to the creation andmodification of objects by activities. An objectflow arrow from an action to an object meansthat the action creates or influences theobject. An object flow arrow from an object toan action indicates that the action state usesthe object.Learn how to draw object flows.

    Initial State

    A filled circle followed by an arrow representsthe initial action state.

    Final StateAn arrow pointing to a filled circle nestedinside another circle represents the final

    action state.

    http://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#conn
  • 8/6/2019 Software Development Diagrams

    16/32

    BranchingA diamond represents a decision withalternate paths. The outgoing alternatesshould be labeled with a condition or guardexpression. You can also label one of thepaths "else."

    SynchronizationA synchronization bar helps illustrate paralleltransitions. Synchronization is also called

    forking and joining.

    SwimlanesSwimlanes group related activities into onecolumn.Read this this flowchart tutorial to learn howto create swimlanes in SmartDraw.

    What is a UML Component Diagram?A component diagram describes the organization of the physical componentsin a system.

    Basic Component Diagram Symbols and Notations

    http://www.smartdraw.com/tutorials/flowcharts/tutorial2.htm#tablehttp://www.smartdraw.com/tutorials/flowcharts/tutorial2.htm#tablehttp://www.smartdraw.com/tutorials/flowcharts/tutorial2.htm#tablehttp://www.smartdraw.com/tutorials/flowcharts/tutorial2.htm#table
  • 8/6/2019 Software Development Diagrams

    17/32

    ComponentA component is a physical building block ofthe system. It is represented as a rectanglewith tabs.Learn how to resize grouped objects likecomponents.

    Interface

    An interface describes a group of operationsused or created by components.

    DependenciesDraw dependencies among componentsusing dashed arrows.

    Learn about line styles in SmartDraw.

    What is a UML Deployment Diagram?Deployment diagrams depict the physical resources in a system including

    nodes, components, and connections.

    Basic Deployment Diagram Symbols and Notations

    Node

    A node is a physical resource that executescode components.

    Learn how to resize grouped objects likenodes.

    AssociationAssociation refers to a physical connectionbetween nodes, such as Ethernet.Learn how to connect two nodes.

    http://www.smartdraw.com/tutorials/software-uml/uml10.htm#grouphttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#grouphttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#grouphttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#grouphttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#grouphttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#grouphttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#connhttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#grouphttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#grouphttp://www.smartdraw.com/tutorials/software-uml/uml8.htm#conn
  • 8/6/2019 Software Development Diagrams

    18/32

    Components and NodesPlace components inside the node thatdeploys them.

    DATAFLOW DIAGRAM

    What are Data Flow Diagrams?Data flow diagrams illustrate how data is processed by a system in terms ofinputs and outputs.

    A data flow diagram

    Data Flow Diagram NotationsYou can use two different types of notations on your data flow diagrams:Yourdon & Coad or Gane & Sarson.

  • 8/6/2019 Software Development Diagrams

    19/32

    Process Notations

    Yourdon and CoadProcess Notations

    Gane and SarsonProcess Notation

    ProcessA process transforms incoming dataflow into outgoing data flow.Learn how to edit text on this object.

    Datastore Notations

    Yourdon and CoadDatastore Notation

    Gane and Sarson

    Datastore Notations

    DataStoreDatastores are repositories of data inthe system. They are sometimes alsoreferred to as files.Learn how to edit text on this object.

    Dataflow Notations DataflowDataflows are pipelines through whichpackets of information flow. Label thearrows with the name of the data thatmoves through it.Learn how to connect objects.

    http://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-erd/erd2.htm#connerdhttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-erd/erd2.htm#connerd
  • 8/6/2019 Software Development Diagrams

    20/32

    External Entity Notations External EntityExternal entities are objects outside thesystem, with which the systemcommunicates. External entities aresources and destinations of the

    system's inputs and outputs.Learn how to edit text on this

    Data Flow Diagram LayersDraw data flow diagrams in several nested layers. A single process node on a

    high level diagram can be expanded to show a more detailed data flowdiagram. Draw the context diagram first, followed by various layers of dataflow diagrams.

    http://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtext
  • 8/6/2019 Software Development Diagrams

    21/32

    The nesting of data flow layers

    Context DiagramsA context diagram is a top level (also known as Level 0) data flow diagram.

    It only contains one process node (process 0) that generalizes the function of

    the entire system in relationship to external entities.

    DFD levels

    The first level DFD shows the main processes within the system. Each ofthese processes can be broken into further processes until you reachpseudocode.

  • 8/6/2019 Software Development Diagrams

    22/32

    An example first-level data flow diagram

    Drawing Nested DFDs in SmartDrawYou can easily nest data flow diagrams in SmartDraw. Draw the high-leveldiagrams first, then select the process you want to expand, go to the Tools

    menu, and select Insert Hyperlink. Link the selected process notation toanother SmartDraw diagram or a web page.

    Once linked, a small plus sign will appear in the object, and clicking on itopens the linked file.

  • 8/6/2019 Software Development Diagrams

    23/32

  • 8/6/2019 Software Development Diagrams

    24/32

    Browse on your network to find the files you want to link to

    You can use this hyperlink function to open any kind of file, including textdocuments, spreadsheets, web pages, or even to launch a program!

    What are ERDs?Entity Relationship Diagrams (ERDs) illustrate the logical structure ofdatabases.

    An ER Diagram

  • 8/6/2019 Software Development Diagrams

    25/32

    Entity Relationship Diagram NotationsPeter Chen developed ERDs in 1976. Since then Charles Bachman and JamesMartin have added some sligh refinements to the basic ERD principles.

    EntityAn entity is an object or concept aboutwhich you want to store information.Learn how to edit text on an entity.

    Weak EntityA weak entity is dependent on anotherentity to exist. Learn how to edit text on thisobject.

    AttributesAttributes are the properties orcharacteristics of an entity.Learn how to edit text on this object.

    Key attributeA key attribute is the unique, distinguishingcharacteristic of the entity. For example, anemployee's social security number might bethe employee's key attribute.

    Multivalued attributeA multivalued attribute can have more thanone value. For example, an employee entitycan have multiple skill values.

    Derived attributeA derived attribute is based on anotherattribute. For example, an employee'smonthly salary is based on the employee'sannual salary.

    Relationships

    Relationships illustrate how two entitiesshare information in the database structure.

    Learn how to draw relationships:First, connect the two entities, then drop the

    relationship notation on the line.

    http://www.csc.lsu.edu/~chen/chen.htmlhttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-erd/erd2.htm#connecthttp://www.smartdraw.com/tutorials/software-erd/erd2.htm#droprelhttp://www.smartdraw.com/tutorials/software-erd/erd2.htm#droprelhttp://www.csc.lsu.edu/~chen/chen.htmlhttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-uml/uml10.htm#addtexthttp://www.smartdraw.com/tutorials/software-erd/erd2.htm#connecthttp://www.smartdraw.com/tutorials/software-erd/erd2.htm#droprelhttp://www.smartdraw.com/tutorials/software-erd/erd2.htm#droprel
  • 8/6/2019 Software Development Diagrams

    26/32

    Weak relationshipTo connect a weak entity with others, youshould use a weak relationship notation.

    Click here for morecardinality notations

    CardinalityCardinality specifies how many instances ofan entity relate to one instance of anotherentity.

    Ordinality is also closely linked to cardinality.While cardinality specifies the occurences ofa relationship, ordinality describes therelationship as either mandatory or optional.In other words, cardinality specifies the

    maximum number of relationships andordinality specifies the absolute minimumnumber of relationships.

    To learn how to express cardinality in

    SmartDraw, click here.

    Recursive relationshipIn some cases, entities can be self-linked.For example, employees can supervise otheremployees.

    Drawing ER Diagrams in SmartDrawYou can draw E-R diagrams in SmartDraw easily and quickly.

    ERD LibraryUse the SmartDraw explorer to find the ERD library located under SoftwareDesign and ERD & DFD.

    http://www.smartdraw.com/tutorials/software-erd/erdcardinality.htmhttp://www.smartdraw.com/tutorials/software-erd/erdcardinality.htmhttp://www.smartdraw.com/tutorials/software-erd/erd2.htm#drawcardordhttp://www.smartdraw.com/tutorials/software-erd/erd2.htm#drawcardordhttp://www.smartdraw.com/tutorials/software-erd/erdcardinality.htmhttp://www.smartdraw.com/tutorials/software-erd/erdcardinality.htmhttp://www.smartdraw.com/tutorials/software-erd/erdcardinality.htmhttp://www.smartdraw.com/tutorials/software-erd/erd2.htm#drawcardordhttp://www.smartdraw.com/tutorials/software-erd/erd2.htm#drawcardord
  • 8/6/2019 Software Development Diagrams

    27/32

    The SmartDraw ERD library

    To open the library, double-click on it or drag it to the drawing area.

    Adding an ERD Symbol to Your PageTo add an ERD symbol to your page, click on it and without releasing the

    mouse, drag it to the page.

  • 8/6/2019 Software Development Diagrams

    28/32

  • 8/6/2019 Software Development Diagrams

    29/32

    Placing the Relationship SymbolTo add a relationship symbol between two entities, first draw the lineconnecting the two entities. Then, drag a relationship symbol from the ERD

    library and drop it on the line. (Make sure that Allow Shapes to Link to

    Lines is turned on under the Arrange menu.)

    Dropping a relationship symbol on a line

    If you're dropping a relationship symbol on a vertical line, it might not attachcorrectly. To make sure the symbol retains its original angle of rotation,right-click on the line and select Horizontally under Align Shapes andText to Line.

    Drawing Cardinality and Ordinality RelationshipsYou can express cardinality and ordinality on an E-R diagram in a number of

  • 8/6/2019 Software Development Diagrams

    30/32

    ways. For a quick look at the different types of notations, click here.

    Adding ArrowsYou can represent cardinality and ordinality by adding arrowheads to the

    lines connecting entities. To do so, select a line, go to Arrowheads under

    the Lines menu, and go to More Styles under Arrowheads. Choose theappropriate arrowhead for the type of relationship you want to illustrate.

    Choose the arrowhead that represents the appropriate cardinality andordinality

    Tips for Effective ER Diagrams1) Make sure that each entity only appears once per diagram.

    2) Name every entity, relationship, and attribute on your diagram.

    3) Examine relationships between entities closely. Are they necessary? Arethere any relationships missing? Eliminate any redundant relationships. Don't

    connect relationships to each other.

    4) Use colors to highlight important portions of your diagram.

    http://www.smartdraw.com/tutorials/software-erd/erdcardinality.htmhttp://www.smartdraw.com/tutorials/software-erd/erdcardinality.htm
  • 8/6/2019 Software Development Diagrams

    31/32

    Using colors can help you highlight important features in your diagram

    5) SmartDraw makes it easy to share your software design diagram with

    others in a business presentation or on the web.

    Export as GIF or JPEG for the webPublish to your free SmartDrawNet web space with just one click. Any

    hyperlinksin your drawings become working hyperlinks on the weband interlinked

    pagesbecome interlinked web sites! More infoExport as HTML with working hyperlinksCopy & Paste into PowerPoint or other Office Suite programs More info

    When you paste your diagram into another program (such as PowerPoint),you can edit it by simply double-clicking on the diagram in the otherprogram. This opens the diagram in SmartDraw for editing, and your

    changes will be updated in the other program automatically.

    6) Create a polished diagram by adding shadows and color. You can choosefrom a number of ready-made styles in the Edit menu under Colors andShadows, or you can create your own.

    http://www.smartdraw.com/net/http://www.smartdraw.com/exp/ste/tutorials/office.htmhttp://www.smartdraw.com/net/http://www.smartdraw.com/exp/ste/tutorials/office.htm
  • 8/6/2019 Software Development Diagrams

    32/32

    An ER diagram created using the Blues style in SmartDraw

    To hide the shadow on an individual object, go to the Arrange menu andselect Hide Shadow.


Recommended