se file.docx

Upload: arundhatidar

Post on 02-Jun-2018

225 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/10/2019 SE FILE.docx

    1/19

  • 8/10/2019 SE FILE.docx

    2/19

  • 8/10/2019 SE FILE.docx

    3/19

    Profile Diagram : operates at the metamodel level to show stereotypes as classeswith the stereotype, and profiles as packages with the stereotype. The extension relation (solid line with closed, filledarrowhead) indicates what metamodel element a given stereotype is extending.

    Behavior Diagrams It emphasizes what must happen in the system being modeled. Since behavior diagramsillustrate the behavior of a system, they are used extensively to describe the functionalityof software systems.

    Activity Diagram: describes the business and operational step-by-step workflowsof components in a system. An activity diagram shows the overall flow of control.

    UML State Machine Diagram: describes the states and the state transitions ofthe system.

    Use Case Diagram: describes the functionality provided by the system in terms

    of actors, their goals represented as use cases, and any dependencies among thoseuse cases.

    Interaction Diagrams These are the subset of behavior diagrams. It emphasizes the flow of control and dataamong the things in the system being modeled.

    Communication Diagram: shows the interactions between objects or parts interms of sequenced messages. They represent a combination of information takenfrom Class,Sequence and Use Case Diagrams describing both static and dynamic

    behavior of the system. Interaction Overview Diagram: provides an overview in which the nodes

    represent communication diagrams. Sequence Diagram: shows how objects communicate with each other in temrs of

    a sequence of messages. Also indicates the lifespan of objects relative to thosemessages.

    Timing Diagram: a specific type of interaction diagram where the focus is ontiming constraints.

    1.2 View of UML Diagrams

    UML plays an important role in defining different perspectives of a system. These perspectives are:

    DESIGN: design of a system consists of classes,interfaces and collaborations. UML provides class diagram, object diagram to support this.

  • 8/10/2019 SE FILE.docx

    4/19

    IMPLEMENTATION: defines the components assembled together to make a complete physical system. UML component diagram is used to support the implementation perspective.

    PROCESS: defines the flow of the system. So the same elements used in design are alsoused to support this perspective.

    COMPONENT: shows the grouped module of a given system using componentdiagrams.

    DEPLOYMENT: represents the physical node of the system that forms the hardware.The deployment diagram is used to support this perspective.And the centre to all of the above views is the USE CASE VIEW which connects all thefour views. A Use case view represents the functionality of the system,so all the other

    perspectives are connected to the same.

    Fig. showing different views of UML Diagrams

    1.3 Features in UML Tools

    A UML tool is a software application that supports some or all the notations and smenaticsassociated with UML. Its various features are:

    DIAGRAMMING:

  • 8/10/2019 SE FILE.docx

    5/19

    Diagramming in this context means creating and editing UML diagrams; that isdiagrams that follow the graphical notation of the Unified Modeling Language.Theuse of UML diagrams as a means to draw diagrams of mostly object-oriented software is generally agreed upon by software developers. When developersdraw diagrams of object-oriented software, they usually follow the UML notation.On the other hand, it is often debated whether those diagrams are needed at all,during what stages of the software development process they should be used, andhow (if at all) they should be kept up to date. The primacy of software code oftenleads to the diagrams being deprecated.

    FORWARD ENGINEERING: Forward Engineering is a traditional process of moving high-level abstracts andlogical, implementation-independent designs to the physical implementation of asystem.

    REVERSE ENGINEERING: Reverse engineering in this context means, that the UML tool reads program sourcecode as input and derives model data and corresponding graphical UML diagramsfrom it.

    DOCUMENTATION:Documentation is an integral aspect of a UML tool. Software designing, by nature, isan abstract process. Apart from a few syntax and semantic ground rules, there are noother rules. The thought process of a software architect who designs applications

    using UML can be lost if the reasons behind certain design decisions are not capturedand well documented. This becomes painfully clear when large systems aremaintained and no one has a clue to why a subsystem was designed in a certain way.Hence, a UML tool must necessarily provide some way for the designer to documentdesign decisions in the diagrams by using simple things such as annotations orcomments. In addition to this, the UML tool should support the generation ofreports/listings of the different design elements of the diagram. Apart from the abovefeatures, you should also identify a few features that would definitely be useful tohave in the UML tool.

    ROUND TRIP ENGINEERING:

    Round-trip engineering refers to the ability of a UML tool to perform codegeneration from models, and model generation from code (a.k.a., reverseengineering), while keeping both the model and the code semantically consistentwith each other. Code generation and reverse engineering are explained in moredetail below.

    VERSION CONTROL:

  • 8/10/2019 SE FILE.docx

    6/19

    Version control or source control is the management of changes to the documents,computer programs, largers websites, and other collections of information.

    INTEGRATION WITH IDE:With the increasing use of iterative methodologies for building software systems, it

    becomes very difficult to keep the design of the system in sync with the developedcode. Hence, it would be useful if the UML tool provides integration with popularIDEs. This feature would enable the UML tool to be updated with the changes in thesource code made in the IDE .

    1.4 Popular UML Tools

    Rational Rose No discussion of UML tools is complete without the mention of the Rational Rosemodeling tool from Rational Software Corporation. Rational Rose (the Rose standsfor "Rational Object-oriented Software Engineering") is a visual modeling tool forUML. It comes in different versions suited to different requirements. Rational Rose

    provides support for all the standard features that we discussed in the previoussection such as UML diagram support, forward and reverse engineering support, anddocumentation and round-trip engineering support. Apart from this, Rational Rosealso provides support for version control, IDE integration, design pattern modeling,test script generation, and collaborative modeling environment. In addition, Rational

    Rose also supports the designing of data models within the same environment. Aninteresting feature of Rational Rose is the ability to publish the UML diagrams as aset of Web pages and images. This enables you to share and distribute yourapplication design where the Rational Rose tool is not installed.

    PoseidonPoseidon from Gentle ware has its roots in the Agrium open source project. The

    Agrium modeling tool evolved as an open source effort and is a useful, full-featuredUML tool freely available under the Open Publication License. Gentle ware hastaken Agrium a step further and turned it into a good modeling tool. Poseidon comesin different flavors suited to different requirements. Poseidon supports forward andreverse engineering and documentation generation by using special-purpose plug-ins.Gentle ware has not forgotten its open source moorings and offers the Poseidon forUML Community Edition 1.5 free for individual software developers

    Together control centre

  • 8/10/2019 SE FILE.docx

    7/19

  • 8/10/2019 SE FILE.docx

    8/19

    Experiment no.-2

    USE-CASE DIAGRAM

    DEFINITION:A use case diagram in the Unified Modeling Language (UML) is a type of behavioral diagramdefined by and created from a Use-case analysis.The use case diagram shows the position or context of the use case among other use cases.As an organizing mechanism, a set of consistent, coherent use cases promotes a useful picture of

    system behavior, a common understanding between the customer/owner/user and thedevelopment team

    AIM/PURPOSE OF USE CASE DIAGRAM: Its purpose is to present a graphical overview of the functionality provided by a system in termsof actors, their goals (represented as use cases), and any dependencies between those use cases.The main purpose of a use case diagram is to show what system functions are performed forwhich actor.

    ELEMENTS OF USE CASE DIAGRAM

    Actors: An actor portrays any entity (or entities) that performs certain roles in a given system.The different roles the actor represents are the actual business roles of users in a given system.An actor in a use case diagram interacts with a use case. For example, for modeling a bankingapplication, a customer entity represents an actor in the application.

    Use case: A use case in a use case diagram is a visual representation of a distinct businessfunctionality in a system. The key term here is distinct business functionality

    System boundary: A system boundary defines the scope of what a system will be. A systemcannot have infinite functionality.

  • 8/10/2019 SE FILE.docx

    9/19

    Experiment no.-2(A)

    AIM: To draw and design use-case diagram for Library Management System.

    Problem statement:The case study titled Library Management System is library management software for the

    purpose of monitoring and controlling the transactions in a library. The case study gives us thecomplete information about the library and the daily transactions done in a library. We need tomaintain the record of new books and retrieve the details of books available in the library whichmainly focuses on basic operations in a library like adding new member, new books, andupdating new information, searching books and members and facility to borrow and return

    books. It features a familiar and well thought-out, an attractive user interface, combined withstrong searching, insertion and reporting capabilities. The report generaton facility of librarysystem helps to get a good idea of which are the books borrowed by the members, makes users

    possible to generate hard copy.

    Overall Description:

    The modules are for:

    Librarian: to maintain and update the records and also to cater the needs of the users.

    Member: need books to read and also places various requests to the librarian.

    Vendor: to provide and meet the requirement of the prescribed books.

    Software Requirements: Rational Rose

    Hardware Requirements: 128 MB RAM,Pentium iii processor

    Use-Case Diagram:

    Actors vs Use-cases

    Librarian

    Issues a book Update and maintains records

    Request the vendor for a book

    Track complaints and fines

  • 8/10/2019 SE FILE.docx

    10/19

    Member

    Register

    Login

    Search a book

    Request for issue

    View history

    Request to librarian

    Unregister

    Books Database

    Update records

    Show status of the book

    Vendor

    Provide books to the library

    Payment and acknowledgement

  • 8/10/2019 SE FILE.docx

    11/19

    Experiment no.-3

    CLASS DIAGRAM

    DEFINITION

    In software engineering, a class diagram in the Unified Modeling Language (UML) is a type ofstatic structure diagram that describes the structure of a system by showing the systems classes,their attributes, and the relationships between the classes.A class diagram is similar to a family tree. A class diagram consists of a group of classes andinterfaces reflecting important entities of the business domain of the system being modeled, andthe relationships between these classes and interfaces. The classes and interfaces in the diagramrepresent the members of a family tree and the relationships between the classes are analogous torelationships between members in a family free. Interestingly, classes in a class diagram areinterconnected in a hierarchical fashion, like a set of parent classes and related child classesunder the parent classes.

    AIM / PURPOSE

    Design experts who understand the rules of modeling and designing systems design the systemsclass diagrams. A thing to remember is that a class diagram is a static view of a system. Thestructure of a system is represented using class diagrams. Class diagrams are referenced time andagain by the developers while implementing the system.

    ELEMENTS OF CLASS DIAGRAM A class diagram is composed primarily of the following elements that represent the systems

    business entities:Class : A class represents an entity of a given system that provides an encapsulatedimplementation of certain functionality of a given entity. These are exposed by the class to otherclasses as methods. Apart from business functionality, a class also has properties that reflectunique features of a class. The properties of a class are called attributes. A class is represented bya rectangle

    Interface : An interface is a variation of a class. As we saw from the previous point, a class

    provides an encapsulated implementation of certain business functionality of a system. Aninterface on the other hand provides only a definition of business functionality of a system. Aseparate class implements the actual business functionality.

    Package: A package provides the ability to group together classes and/or interfaces that are eithersimilar in nature or related. Grouping these design elements in a package element provides for

    better readability of class diagrams, especially complex class diagrams.

  • 8/10/2019 SE FILE.docx

    12/19

    Experiment no.-3(A)

    AIM: To draw and design class diagram for Library Management

    System.

    CLASS DIAGRAM:Classes identified: LibrarianBooks DatabaseMemberVendor

  • 8/10/2019 SE FILE.docx

    13/19

    Experiment no.-4

    STATE CHART DIAGRAM

    DEFINITION

    State Chart diagrams, often used in real time embedded systems than in information systems,show for class, the order in which incoming calls to operations normally occur and theconditions under which the operation respond and the response. State chart diagram is one of thefive UML diagrams used to model dynamic nature of a system. They define different states of anobject during its lifetime. And these states are changed by events. So State chart diagrams areuseful to model reactive systems. Reactive systems can be defined as a system that responds toexternal or internal events.

    AIM / PURPOSE

    They are class centric view of system functionality, as opposed to sequence diagram andcollaboration diagram which are use case centric view of system functionality

    ELEMENTS OF STATE CHART DIAGRAM

    States: Oblong boxes which indicate the stable state of the object between events. Transitions: The solid arrow which shows possible change of states. Events: The text on the transition before the / showing the incoming call to the object

    interface which causes change of the state Conditions: A Boolean statement in square brackets which qualifies the events. Actions: The text after the / which defines the object response to the transition between

    states. Extra syntax defines state centric functionality.

  • 8/10/2019 SE FILE.docx

    14/19

    Experiment no.-4(A)

    AIM: To draw and design state chart diagram for Library ManagementSystem.

    STATE CHART DIAGRAM:

    States:

    Authentication

    Successfully logged on or re-login Search for a book/request the vendor/provide the requested book Receive acknowledgement Logged off/re-search/new function

    Transitions:

    Authenticate Logged in Logged in search Acknowledgement Logged in request vendor Provide book Acknowledgement Logged in provide book Acknowledgement

    Acknowledgement Logged off

  • 8/10/2019 SE FILE.docx

    15/19

  • 8/10/2019 SE FILE.docx

    16/19

    Experiment no.-5(A)AIM: To draw and design activity diagram for library management system.

    ACTIVITY DIAGRAM:

    Activities:

    User Login and AuthenticationSearch book operation for ReaderAcknowledge and Issue books to the users by the LibrarianProvide books requested by the Librarian from the VendorBill payment from the Librarian to the VendorStatus of the books updated in the Books Database

  • 8/10/2019 SE FILE.docx

    17/19

    Experiment no.-6

    SEQUENCE & COLLABORATION DIAGRAM

    DEFINITION:

    A sequence diagram is an interaction diagram. It deals with the sequence of messages flowingfrom one object to another. Sequence diagram is used to visualize the sequence of calls in asystem to perform a specific functionality.

    A collaboration diagram is another form of interaction diagram. It represents the structuralorganization of the system and the message sent/received. Structural organization consists ofobjects and links. The purpose is same as that of sequence diagram. But they are specificallyused to visualize the organization of objects and their interaction.

    AIM/PURPOSE:

    To capture the dynamic behavior of a system. To describe the message flow in the system. To describe the structural organization of the objects. To describe the interaction among objects.

    ELEMENTS OF SEQUENCE/COLLABORATION DIAGRAM:

    Lifeline: It represents the individual participant in the interaction. Message: It represents the communication between lifelines of an interaction.

    Gate: It is a message end showing the communication is complete. Occurrence: It is the interaction fragment showing a moment in time in the beginning orending of a message.

    Execution (full name - execution specification , informally called activation )is interaction fragment which represents a period in the participant's lifetime when it is

    executing a unit of behavior or action within the lifeline, sending a signal to another participant, waiting for a reply message from another participant.

  • 8/10/2019 SE FILE.docx

    18/19

    Experiment no.-6(A)AIM: To draw and design sequence diagram for library management system.

    SEQUENCE DIAGRAM:

    Sequence diagram for searching and issuing books as per the request of the user from thelibrarian:

  • 8/10/2019 SE FILE.docx

    19/19

    Experiment no.-6(B)AIM: To draw and design collaboration diagram for library managementsystem.

    COLLABORATION DIAGRAM:

    Collaboration diagram for searching and issuing the books as per the request of the user from thelibrarian :