0% found this document useful (0 votes)
65 views

Lab Manual: Siddhartha Engineering College

The document is a lab manual for a software engineering course that provides instructions on how to maintain a record book of UML diagrams drawn using Visual Paradigm modeling tool. It lists the types of UML diagrams to be drawn for various applications, including use case diagrams, class diagrams, sequence diagrams, and others. It then provides details on how to draw each type of diagram, highlighting the key elements and notation. Sample diagrams are given for an introductory exercise on UML diagrams.
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
65 views

Lab Manual: Siddhartha Engineering College

The document is a lab manual for a software engineering course that provides instructions on how to maintain a record book of UML diagrams drawn using Visual Paradigm modeling tool. It lists the types of UML diagrams to be drawn for various applications, including use case diagrams, class diagrams, sequence diagrams, and others. It then provides details on how to draw each type of diagram, highlighting the key elements and notation. Sample diagrams are given for an introductory exercise on UML diagrams.
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

CS 451 SOFTWARE ENGINEERING LAB

LAB MANUAL

FOR IV/IV B.Tech COMPUTER SCIENCE & ENGINEERING

Dept. of Computer Science & Engineering

SIDDHARTHA ENGINEERING COLLEGE


KANURU, VIJAYAWADA-520007, A.P.

VELAGAPUDI RAMAKRISHNA

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

INSTRUCTIONS TO BE FOLLOWED IN MAINTAINING THE RECORD BOOK


The record should be prepared by taking out the original print out of the UML diagrams drawn in Visual Paradigm (Microsoft Inc) tool in Windows XP platform by the students in the Software Engineering Lab and the observation note book contains the hand drawn diagram of all the UML diagrams. The List of UML Diagrams Drawn in Software Engineering Lab is

1. Use Case Diagram (Static Diagrams) 2. Class Diagram 3. Object Diagram 4. Behavior Diagrams (Dynamic Diagrams) 4.1. Interaction Diagrams 4.1.1. Sequence Diagram 4.1.2. Collaboration Diagram 4.2. State Chart Diagram 4.3. Activity Diagram 5. Implementation Diagram 5.1. Component Diagram 5.2. Deployment Diagram
The Record should Contains 1. The Date 2. The Number and name of the system for which UML diagrams are drawn 3. The Aim of the Software system developed 4. List the Actors 5. List the Use Cases 6. Draw all the 8 UML ( Unified Modeling Language ) Diagrams for the Application 7. Index must be filled in regularly 8. Each application certified by the staff at the completion of each system 9. The whole record work should certified by the in charge staff at the end of the semester.

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

PREFACE
Software development is moving from traditional structured programming to the Object Oriented paradigm. There are many object oriented models but UML is by far the most popular and real world modeling tool. Exploring this particular methodology will benefit Students in the Object Oriented Software Development Process. The unified modeling Language help the students to explore the total software life cycle by modeling diagrams at different phases of the software development and makes both developer and the customer well understanding of the system which is been developed. The reusability/ Iteration are the other benefits that we having when the product modeled before it developed in real time

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

V.R.SIDDHARTHA ENGINEERING COLLEGE: VIJAYAWADA DEPT.OF COMPUTER SCIENCE AND ENGG.

LAB CYCLE

The UML (Unified Modeling Language) Diagrams for the following Applications are drawn in Visual Paradigm (Microsoft Inc) tool in Windows XP platform.

1. STUDY OF UNIFIED MODELING LANUAGE DIAGRAMS.

2. ATM APPLICATION SYSTEM.

3. QUIZ APPLICATION.

4. RAILWAY RESERVATION SYSTEM.

5. BANKING SYSTEM.

6. LIBRARY MANAGEMENT SYSTEM.

7. RECRITMENT PROCEDURE FOR SOFTWARE INDUSTRY

8. GATE (Graduate Aptitude Test for Engineers) COUNSULING APPLICATION.

9. HOTEL MANAGEMENT SYSTEM

10. UNIVERSITY MANAGEMENT SYSTEM.

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

Expt.No: 1

UNIFIED MODELING LANUAGE (UML) DIAGRAMS


INTRODUCTION TO UML DIAGRAM The Unified Modeling Language (UML) is a language for specifying, constructing, visualizing, and documenting the artifacts of a software-intensive system. Analogous to the use of architectural blueprints in the construction industry, UML provides a common language for describing software models, and it can be used in conjunction with a wide range of software lifecycles and development processes.

1. USE CASE DIAGRAM Use Case diagrams identify the functionality provided by the system (use cases), the users who interact with the system (actors), and the association between the users and the functionality. Use Cases are used in the Analysis phase of software development to articulate the high-level requirements of the system. The primary goals of Use Case diagrams include: Providing a high-level view of what the system does Identifying the users ("actors") of the system Determining areas needing human-computer interfaces. Use Cases extend beyond pictorial diagrams. In fact, text-based use case descriptions are often used to supplement diagrams, and explore use case in more detail. Basic Use Case Diagram Symbols and Notations The basic components of Use Case diagrams are the Actor, the Use Case, and the Association. 1. Actor An Actor, as mentioned, is a user of the system, and is depicted using a stick figure. The role of the user is written beneath the icon. Actors are not limited to humans. functionality

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

If a system communicates with another application, and expects input or delivers output, then that application can also be considered an actor.

2. Use Case A Use Case is functionality provided by the system, typically described as verb+object (e.g. Register Car, Delete User). Use Cases are depicted with an ellipse. The name of the use case is written within the ellipse.

3. Association Associations are used to link Actors with Use Cases, and indicate that an Actor participates in the Use Case in some form. Associations are depicted by a line connecting the Actor and the Use Case.

4. System Draw your system's boundaries using a rectangle that contains use cases. Place actors outside the system's boundaries.

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

5.Relationships The relationships between an actor and a use case with a simple line. For relationships among use cases, use arrows labeled either "uses" or "extends." A "uses" relationship indicates that one use case is needed by another in order to perform a task. An "extends" relationship indicates alternative options under a certain use case.

2. CLASS DIAGRAM Class diagram are used to describe the type of objects and their relationship by providing a static, structural view of a system. Class diagrams show the classes of the system, their interrelationships (including inheritance, aggregation, and association), and the operations and attributes of the classes. Class diagrams are used for a wide variety of purposes, including both conceptual/domain modeling and detailed design modeling. Basic Class Diagram Symbols and Notations 1. Classes The classes are represented with rectangles divided into compartments. Place the name of the class in the first partition (centered, bolded, and capitalized), list the attributes in the second partition, and write operations into the third.

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

2. Active Class Active classes initiate and control the flow of activity, while passive classes store data and serve other classes. Illustrate active classes with a thicker border.

3. Visibility Use of the visibility markers to signify who can access the information contained within a class. Private visibility hides information from anything outside the class partition. Public visibility allows all other classes to view the marked information. Protected visibility allows child classes to access information they inherited from a parent class.

4.Associations Associations represent static relationships between classes. Place association names above, on, or below the association line. Use a filled arrow to indicate the direction of the relationship. Place roles near the end of an association. Roles represent the way the two classes see each other.

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

5. Multiplicity (Cardinality) Place multiplicity notations near the ends of an association. These symbols indicate the number of instances of one class linked to one instance of the other class. For example, one company will have one or more employees, but each employee works for one company only.

6. Constraint It is a semantic relationship among model elements that specifies conditions and proportions that must be maintained as true; otherwise the system describes model is invalid. The constraints should be placed inside curly braces {}.

Simple Constraint

Complex Constraint

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

7. Composition and Aggregation Composition is a special type of aggregation 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 a simple aggregation relationship, in which the "whole" class plays a more important role than the "part" class, but the two classes are not dependent on each other. The diamond end in both a composition and aggregation relationship points toward the "whole" class or the aggregate.

8.Generalization Generalization is another name for inheritance or an "is a" relationship. It refers to a relationship between two classes where one class is a specialized version of another. For example, Honda is a type of car. So the class Honda would have a generalization relationship with the class car.

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

3. SEQUENCE DIAGRAM Sequence diagrams document the interactions between classes to achieve a result, such as a use case. Because UML is designed for objectoriented programming, these communications between classes are known as messages. The Sequence diagram lists objects horizontally, and time vertically, and models these messages over time.. Basic Sequence Diagram Symbols and Notations In a Sequence diagram, classes and actors are listed as columns, with vertical lifelines indicating the lifetime of the object over time. 1. Object Objects are instances of classes, and are arranged horizontally. The pictorial representation for an Object is a class (a rectangle) with the name prefixed by the object name (optional) and a semi-colon.

2. Actor Actors can also communicate with objects, so they too can be listed as a column. An Actor is modeled using the ubiquitous symbol, the stick figure.

3. Lifeline The Lifeline identifies the existence of the object over time. The notation for a Lifeline is a vertical dotted line extending from an object.

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

4. Activation Activations, modeled as rectangular boxes on the lifeline, indicate when the object is performing an action.

5. Message Messages, modeled as horizontal arrows between Activations, indicate the communications between objects.

Various message types for Sequence diagrams

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

6. Destroying Objects Objects can be terminated early using an arrow labeled "< < destroy > >" that points to an X.

7. Loops A repetition or loop within a sequence diagram is depicted as a rectangle. Place the condition for exiting the loop at the bottom left corner in square brackets [ ].

4. COLLABORATION DIAGRAM A collaboration diagram is an interaction diagram that emphasizes the structural organization of the objects that send and receive messages. It is crossed between a symbol diagram and sequence diagram. The numbered arrows show the movement of messages.

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

Basic collaboration Diagram Symbols and Notations 1. Class roles Class roles describe how objects behave. Use the UML object symbol to illustrate class roles, but don't list object attributes.

2. Association roles Association roles describe how an association will behave given a particular situation. You can draw association roles using simple lines labeled with stereotypes.

3. Messages Unlike sequence diagrams, collaboration diagrams do not have an explicit way to denote time and instead number messages in order of execution. Sequence numbering can become nested using the Dewey decimal system. For example, nested messages under the first message are labeled 1.1, 1.2, 1.3, and so on. The condition for a message is usually placed in square brackets immediately following the sequence number. Use a * after the sequence number to indicate a loop.

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

5. STATE DIAGRAM The State chart diagram describes the behavior of a single object class, especially if the classes illustrate significant dynamic behavior. State chart / state transition diagram for those types of classes. It shows the a life history of a given class, the events that causes a transition from one state to another, and the action that results from a state change. States are represents as rounded rectangles (rectangles with smooth edges); each state has a unique identifying name. A state may contains three compartment shows the name of the state, the optional state variables and action performed. An object is not always in the same state at all times, and an object cannot be in an unknown or undefined state. Elements of State Chart Diagram 1. Object State Object State is a state of an object at given point in time

2. State of Object with three compartments Object State

State Variables Activities

3. Initial State

4. Final state

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

5. Transition Transition occurs when dynamic conditions evolve or objects change their state by following the rules specified in the state machine associated to their classes. State chart diagrams are directed graph. State are linked via unidirectional connections called transitions.

6. ACTIVITY DIAGRAM Activity diagrams are used to document workflows in a system, from the business level down to the operational level. When looking at an Activity diagram, you'll notice elements from State diagrams. In fact, the Activity diagram is a variation of the state diagram where the "states" represent operations, and the transitions represent the activities that happen when the operation is complete. The general purpose of Activity diagrams is to focus on flows driven by internal processing vs. external events.

Basic Activity Diagram Symbols and Notations 1. Activity States Activity states mark an action by an object. The notations for these states are rounded rectangles, the same notation as found in State chart diagrams.

2. Transition When an Activity State is completed, processing moves to another Activity State. Transitions are used to mark this movement. Transitions are modeled using arrows.

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

3. Swim lane Swim lanes divide activities according to objects by arranging objects in column format and placing activities by that object within that column. Objects are listed at the top of the column, and vertical bars separate the columns to form the swim lanes.

4. Initial State The Initial State marks the entry point and the initial Activity State. The notation for the Initial State is the same as in State chart diagrams, a solid circle. There can only be one Initial State on a diagram.

5. Final State Final States mark the end of the modeled workflow. There can be multiple Final States on a diagram, and these states are modeled using a solid circle surrounded by another circle.

6. Synchronization Bar Activities often can be done in parallel. To split processing ("fork"), or to resume processing when multiple activities have been completed ("join"),

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

Synchronization Bars are used. These are modeled as solid rectangles, with multiple transitions going in and/or out.

7. Branching A diamond represents a decision with alternate paths. The outgoing alternates should be labeled with a condition or guard expression. You can also label one of the paths "else."

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

6. COMPONENT DIAGRAM Component diagrams fall under the category of an implementation diagram, a kind of diagram that models the implementation and

deployment of the system. A Component Diagram, in particular, is used to describe the dependencies between various software components such as the dependency between executable files and source files. This information is similar to that within make files, which describe source code dependencies and can be used to properly compile an application.

Basic component Diagram Symbols and Notations 1. Component A component represents a software entity in a system. Examples include source code files, programs, documents, and resource files. A component is represented using a rectangular box, with two rectangles protruding from the left side, as seen in the image to the right.

2. Dependency A Dependency is used to model the relationship between two components. The notation for a dependency relationship is a dotted arrow, pointing from a component to the component it depends on.

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

3. Interface An interface describes a group of operations used or created by components.

8. DEPLOYMENT DIAGRAM The Deployment diagram describes the run-time architecture of processors, devices and the software components. It describes the physical topology of the system and its structure. It specifies which component and logical elements (class, object and collaborations) are executed in the node (system). Nodes are Physical objects or device such computer, printers, card readers and communication devices and so on. A node is drawn as a three dimensional cube with names inside it.

The Deployment diagram shows The Physical relationship among software and hardware components in the delivered system A good model to show how components and objects are routed and move around in the distributed system. The configuration of run-time processing elements and the software components processes and objects that live on them.

Prepared by: RAMESH KUMAR.P, Sr.Lecturer, Dept CSE, VRSEC.

Created by PDF Generator (http://www.alientools.com/), to remove this mark, please buy the software.

You might also like