se lab cycle

Upload: yeshwanth-kumar

Post on 07-Apr-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/4/2019 Se Lab Cycle

    1/20

    LAB MANUAL

    CS 451 SOFTWARE ENGINEERING LAB

    FOR IV/ IV B.Tech

    COMPUTER SCIENCE & ENGINEERING

    Dept. of Computer Science & Engineering

    VELAGAPUDI RAMAKRISHNA

    SIDDHARTHA ENGINEERING COLLEGEKANURU, VIJAYAWADA-52 0007, A.P.

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

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    2/20

    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 UM L DiagramsDrawn 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

    TheRecord 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    3/20

    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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    4/20

    V.R.SI DDHARTHA ENGI NEERING COLLEGE: VI JAYAWADA

    DEPT.OF COMPUTER SCI ENCE 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    5/20

    Expt.No: 1

    UNI FIED M ODELI NG LANUAGE (UM L) DIAGRAMS

    I NTRODUCTION TO UM L DI AGRAM

    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 DI AGRAM

    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 n eeding 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 functionality

    in more detail.

    Basic Use Case Diagram Symbolsand 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.

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

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    6/20

    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. SystemDraw 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    7/20

    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 DI AGRAM

    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 ClassDiagram Symbolsand 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), listthe 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    8/20

    2. ActiveClassActive 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. VisibilityUse 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    9/20

    5. M ultiplicity (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. ConstraintIt 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    10/20

    7. Composition and AggregationComposition 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    11/20

    3. SEQUENCE DI AGRAMSequence diagrams document the interactions between

    classes to achieve a result, such as a use case. Because UML is designed for object-

    oriented 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 Symbolsand Notations

    In a Sequence diagram, classes and actors are listed as columns, with vertical

    lifelines indicating the lifetime of the object over time.

    1. ObjectObjects 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. LifelineThe 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    12/20

    4. ActivationActivations, modeled as rectangular boxes on the lifeline, indicate when the

    object is performing an action.

    5. M essageMessages, 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    13/20

    6. Destroying Objects

    Objects can be terminated early using an arrow labeled

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

    7. LoopsA 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 DIAGRAMA 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    14/20

    Basic collaboration Diagram Symbolsand Notations

    1. Classroles

    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. M essagesUnlike 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    15/20

    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.

    Elementsof State Chart Diagram

    1. Object StateObject State is a state of an object at given point in time

    2. Stateof Object with three compartments

    3. I nitial State

    4. Final state

    Object State

    State Variables

    Activities

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

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    16/20

    5. TransitionTransition 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. ACTI VIT Y 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 Symbolsand Notations

    1. Activity StatesActivity 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. TransitionWhen 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    17/20

    3. Swim laneSwim 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. I nitial StateThe 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 StateFinal 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 BarActivities 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    18/20

    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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    19/20

    6. COMPONENT DIAGRAMComponent 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 Symbolsand Notations

    1. ComponentA 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. DependencyA 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.

    http://www.alientools.com/http://www.alientools.com/
  • 8/4/2019 Se Lab Cycle

    20/20

    3. I nterfaceAn interface describes a group of operations used or created by

    components.

    8. DEPLOYM ENT DI AGRAM

    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.