Professional Documents
Culture Documents
IV B.Tech - I Semester
UNIFIED MODELLING LANGUAGE(UNIT-3)
V.TATARAO
Asst.Professor
CSE DEPT
UNIFIED MODELLING LANGUAGE UNIT-6
UNIT-VI
UNIT-VI: Architectural Modeling: Component, Deployment, Component diagrams and
Deployment diagrams. Case Study: The Unified Library application.
Components
Introduction:
A component is a physical replaceable part of a system that complies with and provides the
realization of a set of interfaces. We use components to model the physical things that may reside
on a node, such as executables, libraries, tables, files and documents. A component typically
represents the physical packaging of otherwise logical elements such as classes, interfaces and
collaborations.
We do logical modeling to visualize, specify, and document our decisions about the vocabulary of
our domain and the structural and behavioral way those things collaborate. We do physical
modeling to construct the executable system. Object libraries, executables, COM+ components and
Enterprise Java Beans are all examples of components.
The relationship between a component and the classes it implements can be shown explicitly by
using a dependency relationship as shown below:
Binary Replaceability:
The basic intent of every component-based operating system facility is to permit the assembly of
systems from binary replaceable parts. This means that we can create a system out of components
UNIFIED MODELLING LANGUAGE UNIT-6
and then evolve the system by adding new components and replacing the old ones, without
rebuilding the system.
First, a component is physical. It lives in the world of bits, not concepts.
Second, a component is replaceable. A component is substitutable means it is possible to replace a
component with another that conforms to the sane interfaces.
Third, a component is part of a system. A component rarely stands alone. Rather, a given
component collaborates with other components and in so doing exists in the architectural or
technology context in which it is intended to be used.
Fourth, a component conforms to and provides the realization of a set of interfaces.
Kinds of Components:
Three kinds of components may be distinguished.
First, there are deployment components. These are the components necessary and sufficient to form
an executable system, such as dynamic libraries (DLLs) and executables (EXEs).
Second, there are work product components. These components are generally the residue of the
development process, consisting of things such as the source code files and data files from which
deployment components are created.
Third are execution components. These components are created as a consequence of an executing
system, such as COM+ object, which is instantiated from a DLL.
Standard Elements:
All the UML’s extensibility mechanisms apply to components. Most often, we’ll use tagged values
to extend the component properties and stereotypes to specify new kind of components.
Modeling an API:
To model an API:
Identify the programmatic seems in the system and model each seem as an interface.
UNIFIED MODELLING LANGUAGE UNIT-6
Expose only those properties of the interface that are important to visualize the given
context. Otherwise, hide these properties, keeping them in the interface’s specification for
reference, as necessary.
Model the realization of each API only as it is important to show the configuration of a
specific implementation.
Component Diagrams
Introduction:
Component diagrams are one of the two kinds of diagrams for modeling the physical aspects of
object-oriented software systems. A component diagram shows the organization and dependencies
among a set of components. We use component diagrams to model the static implementation view
of a software system.
Like all other diagrams, component diagrams may contain notes and constraints. Component
diagrams may also contain packages.
Common Uses:
When modeling the static implementation view of a system, we will typically use component
diagrams in one of four ways:
1. To model source code.
2. To model executable releases.
3. To model physical databases.
4. To model adaptable systems.
Either by forward or reverse engineering, identify the set of source code files of interest and
model them as components stereotypes as files.
For larger systems, use packages to show groups of source code files.
Consider using tagged values indicating such information as the version number of the
source code file, its author, and the date it was last changed.
Model the compilation dependencies among these files using dependencies.
UNIFIED MODELLING LANGUAGE UNIT-6
Deployment
Introduction:
A node is a physical element that exists at runtime and represents a computational resource,
generally having at least some memory and, often, processing capability. We use nodes to model
the topology of the hardware on which our system executes. A typically represents a processor or a
device on which components may be deployed.
When we architect a software-intensive system, we have to consider both its logical and physical
dimensions. On the logical side, you’ll find things such as classes, interfaces, collaborations,
interactions and state machines. On the physical side you’ll find components and nodes.
In UML, a node is represented as a cube as shown below. Using stereotypes we can tailor this
notation to represent specific kinds of processors and devices.
UNIFIED MODELLING LANGUAGE UNIT-6
Connections:
The most common kind of relationship we’ll use among nodes is an association. In this context, an
association represents a physical connection among nodes, such as an Ethernet connection, a serial
line, or a shared bus as shown below. We can even use associations to model indirect connections,
such as a satellite link between distant processors.
Deployment Diagrams
Introduction:
Deployment diagrams are one of the two kinds of diagrams used in modeling the physical aspects
of an object-oriented system. A deployment diagram shows the configuration of run time
processing nodes and the components that live on them.
We use deployment diagrams to model the static deployment view of a system. A deployment
diagram is a diagram that shows the configuration of run time processing nodes and the components
that live on them.
Common Properties:
A deployment is just a special kind of diagram that shares the same properties as all other diagrams
like: a name and graphical contents. What distinguishes a deployment diagram from the rest of the
diagrams is its content.
Contents:
A deployment diagram commonly contains:
Nodes
Like all other diagrams, deployment diagrams may contain notes and constraints.
Deployment diagrams may also contain components, each of which must live on some node.
Deployment diagrams may also contain packages and subsystems.
Common Uses:
When modeling the static deployment view of a system, we’ll typically use deployment diagrams in
one of the three ways:
1. To model embedded systems.
2. To model client/server systems.
3. To model fully distributed systems.
Dependency symbol Shows that one part of your system depends on another.
Dependencies are represented by dashed lines linking one
--------->
component (or element) to another.
UNIFIED MODELLING LANGUAGE UNIT-6
CASE STUDY
Requirements:
The ATM will service one customer at a time. A customer will be required to insert an ATM card
and enter a personal identification number (PIN) - both of which will be sent to the bank for
validation as part of each transaction. The customer will then be able to perform one or more
transactions. The card will be retained in the machine until the customer indicates that he/she
desires no further transactions, at which point it will be returned -except as noted below.
The ATM must be able to provide the following services to the customer:
1. A customer must be able to make a cash withdrawal from any suitable account linked to the card,
in multiples of Rupees 100. Approval must be obtainedfrom the bank before cash is dispensed.
2. A customer must be able to make a deposit to anyaccount linked to the card, consisting of cash
and/or checks in an envelope. The customer will enter the amount of the deposit into the ATM,
subject to manual verification when the envelope is removed from the machine by an operator.
Approval must be obtained from the bank before physically accepting the envelope.
3. A customer must be able to make a transfer of money between any two accounts linked to the
card.
4. A customer must be able to make a balance inquiry ofany account linked to the card.
Aim : To work with the use case diagram for ATM system.
UNIFIED MODELLING LANGUAGE UNIT-6
Procedure: Draw and drop the actors and use case from browser window into the diagram
window. Associate the use cases and actors.
Description: A use case diagram is a description of set of sequence of actions including variants
that the system performs which yields an observable result of value to an actor. The use case diagram
of ATM system contains two actions majorly. The ATM machine and the client.. The client interacts with
a set of use cases where he can enter ATM machine, enter pin, withdraw money, and check balance.
The ATM machine checks the pin, checks the balance, gives money and gives the receipt
Result: We have successfully worked with the ATM system in use case view.
Aim : To work with class diagram in logical view for unified ATM application.
RAGHU ENGINEERING COLLEGE DEPT. OF CSE
Software used: MICROSOFT VISIO 2003
Procedure: Create a new package from the database and name it as class diagram. From the
toolbar, select the required tools and make corresponding connections.
Description: Class diagrams are used for visualizing, specifying and documenting structural
modeling. It consists of set of classes and then relationships. It consists of classes’ customer, ATM,
account database. Customer class consists of attributes name, address, and account type and account
number. It consists of operations enter pin(), request transaction(), balance enquiry(), withdraw
amount(), takes cash() and takes receipt(). ATM class consists of attributes branch name and code. It
consists of operations accept card(), verifies pin no(), verify balance() and issue money(), accept
inputs(), provide cash(), provide receipts(), process transaction(). Account database consists of branch
name, branch code, ATM center code. Operation like balance checking(), pin details(), withdraw
amount(), verify funds(), deduct funds(), update details(). So we place aggregation relationship
between them.
Result: We have successfully worked with class diagram in logical view for ATM system.
Procedure: Create a new package from the database and name it as a sequence diagram from the
toolbar, select the required tools and make corresponding connections.
Description: Both sequence and collaboration diagrams are interaction diagrams. Sequence
diagram is an interaction diagrams which emphases time ordering of message. Sequence diagrams
consist of classes’ customer, ATM machine and account. Customer insert card, ATM machine promts for
pin. Customer enters pin, database checks pin verification and database says its ok. Then enters the
transaction he can withdraw amount, customer enter amount and machine sees that amount is
entered. ATM machine verifies amount in database and if balance is present. Tells customer that
withdraw success, customer takes cash and issues receipt and finally takes receipt from ATM machine.
Result: We have successfully worked with sequence diagram in use case view for ATM system.
Aim: To work with collaboration diagram in use case view for ATM system.
Software used: MICROSOFT VISIO 2003
Procedure: Create a new package from the database and name it as a collaboration diagram From
the toolbar, select the required tools and make corresponding connections.
Result: We have successfully worked with collaboration diagram in use case view for ATM system.
Aim: To work with the state chart diagram for ATM machine.
Software used: MICROSOFT VISIO 2003
Procedure: Create a new package from the database and name it as a state chart diagram From
the toolbar, select the required tools and make corresponding connections.
Description: A state chart diagram shows a state machine emphasizing the flow of control from
state to state. In the state chart diagram for client the flow start from client entering the card and pin
number into the system. If the validation ok () result true then he can enters amount and collect
amount. The statechart diagram for ATM system constitutes the states where it checks the details of
the member for validation, issue amount, issue receipt and then eject card.
Result: We have successfully worked with statechart diagram for ATM machine.
Procedure: Create a new package from the database and name it as a component diagram From
the toolbar, select the required tools and make corresponding connections.
Description: A component diagram shows the organization of and dependencies among a set of
component. A component is a physical and replaceable part of a system that confirms to and provides
realization of a set of interfaces. The component diagram of the ATM system constitutes three
components. These are database ATM machine and client. The user has a dependency relationship
with the ATM machine which interns as a dependency relation with the database. Result: We have
successfully worked with component diagram for ATM machine.
Description: The deployment diagram shows the configuration of runtime processing nodes and
the component that live on them. The deployment diagram of the ATM system contains three nodes.
These nodes are adorned with some of the components that reside on them. The first node is adorned
with the database, the second with the ATM machine and last one is client. The client has a
dependency relation with the ATM machine which intern has a dependency relation with data
component.
Result: We have successfully worked with deployment diagram for ATM machine.
2.LIBRARY SYSTEM
Functional Requirements
Following is a list of functionalities of the system. More functionality that you find appropriate can
be added to this list. And, in places where the description of functionality is not adequate, you can
make appropriate assumptions and proceed.
There are registered people in the system (students, faculty, librarian et al). Each one of them may
have some exclusive privileges (faculty, for example, could borrow reference books for a short
period, while students cannot).
1. A person should be able to
a. login to the system through the first page of the application
b. change the password after logging into the system
c. see the status of the books/journals borrowed/reserved by him and the respective due dates and
other relevant details
d. search for a particular book/journal based on the name of the book/name of the author/subject/etc
and also list for books/journals based on the name of the autor/subject etc
e. reserve a particular book/journal borrowed by others currently cancel the reservation made earlier
for a particular book/journal
f. see who has borrowed a particular book/journal and when is the due date for the same
g. place requests for purchasing new books to the library, by giving details about the name of the
book, name of the author, publisher etc.
h. get help about the LiMS on how to use the different features of the system
2. As soon as a reservation is made for a particular book, an automatic mail should be sent to the
person who made the reservation about the details. Then, a mail should be sent to people who are
having the book currently, stating a reservation has been made on that book.
UNIFIED MODELLING LANGUAGE UNIT-6
3. Automatic mails should be sent to the users about the expiry of due dates for the books/journals
borrowed by them. An advance notification (say, 4 days before the expiry of the due date) should be
sent as well.
4. The librarian should be able to
The main objective of the project is to create an online book store that allows users to search and
purchase a book online based on title, author and subject. The selected books are displayed in a
tabular format and the user can order their books online through credit card payment. Using this
Website the user can purchase a book online instead of going out to a book store and wasting time.
There are many online book stores like Powell’s, Amazon which were designed using Html. I want
to develop a similar website using .NET, SQL Server. Online Book store is an online web
application where the customer can purchase books online. Through a web browser the customers
can search for a book by its title or author, later can add to the shopping cart and finally purchase
using credit card transaction. The user can login using his account details or new customers can set
up an account very quickly. They should give the details of their name, contact number and
shipping address. The user can also give feedback to a book by giving
ratings on a score of five. The books are divided into many categories based on subject like
Software, Database, English, Architecture etc.
Functional Requirements
The Online Book Store Website provides customers with online shopping through a web browser. A
customer can, create, sign in to his account, place items into a shopping cart and purchase using his
credit card details.
INFORMATION DESCRIPTION:
HARDWARE DESCRIPTION:
1.Pentium Processor
2. Intel Motherboard
3. RAM 256MB(minimum)
4. Hard disk 40GB(minimum)
SOFTWARE DESCRIPTION:
• Microsoft VisualBasic6.0
• Microsoft Access
• Rational Rose
Interface going to be used is a user friendly interface,it is an online interface which will
satisfy the users needs.
FUNCTIONAL DESCRIPTION:
PERFORMANCE CHARACTERISTICS:
• Fast access
• Easy access for end users.
• Simple steps for reservation and cancellation.
DATABASE REQUIREMENTS:
AVAILABILITY:
Available to all systems around the clock.
Available in any environment
Suites for everyone that is no credit card needed.
Just enter the bank name and account no for payment.
MAINTAINABILITY:
Regular updates of database
Backup of database is maintained to avoid the loss of data due
to power failure.
Less memory space required.
BEHAVIOUR DESCRIPTION:
1.Reservation
• Easy and fast steps to reserve a ticket.
• Before reserving we can check the availability,timings etc..,
2.Cancellation
• Easy and few steps to cancel the tickets.
• The money will be automatically refunded in the bank account.
• Specified at the time of reservation.
• The history of reservation is maintained.
UNIFIED MODELLING LANGUAGE UNIT-6
Functional Requirements
• A Customer must have a valid User Id and password to login to the system
• If a wrong password is given thrice in succession, that account will be locked and the
customer will not be able to use it.
• When an invalid password is entered a warning is given to the user that his account is
going to get locked.
• After the valid user logs in he is shown the list of accounts he has with the bank.
• iv. On selecting the desired account he is taken to a page which shows the present bal -
ance in that particular account number
• User can request details of the last ‘n’ number of transactions he has performed.
A report can also be taken of this.
• User can make a funds transfer to another account in the same bank. User is provided
with a transaction password which is different from the login password.
• User can transfer funds from his account to any other account with this bank. If the
transaction is successful a notification should appear to the customer, in case it is un-
successful, a proper message should be given to the customer as to why it failed.
• User can request for cheque book/change of address/stop payment of cheques
• User can view his monthly as well as annual statements. He can also take print out of
the same.
UNIFIED MODELLING LANGUAGE UNIT-6