Académique Documents
Professionnel Documents
Culture Documents
Deployment view - Model the components required for deploying the system.
Define SDLC?
SDLC of a system included processes like Use case driven, Architecture centric, Iterative and Incremental.
Process Workflows that evolve through these phase are Business Modeling, Requirement gathering,
Analysis and Design. Supporting Workflows are configuration, change management, and project
management.
Building Block:
Things
Structural Things
Behavioral things
Grouping things
Annotational things
Relationships
Dependency
Association
Generalization
Realization
Diagram
Class Diagram
Object Diagram
Use case Diagram
Sequence Diagram
Collaboration Diagram
Statechart Diagram
Activity Diagram
Component Diagram
Deployment Diagram
Things:
Structural things
Class
Interface
Collaboration
Use case
Active class
Component
Node
Behavioral things
Message
State
Grouping things
Package
Anootational things
Notes
Relationships:
Dependency
Dependency is the relationship between two things in which a change in one thing may affect the other thing, but not
necessarily the reverse. Graphically, it can be represented as a dashed directed line, directed to the thing being
depended on.
Association
An association is a relationship that connects classes. Example of association is relationship between person and
company. An association is rendered as solid line.
Adornments of association
Name: You can use Name to specify the nature of association
Role: Each class has specific role that participates in the relationship. We can specify role to the classes involve in
the relationship.
Multiplicity: It represents how many objects may be connected across an instance of an association.
Aggregation: It implies whole/part relationship where one class represents larger thing which consists of smaller
things.
Generalization
In this type of relationship, the child shares the structure and behavior of the parent. It is represented as a solid line
with a hollow arrowhead pointing to the parent.
Realization
A realization is a relationship where one class specifies a contract which another class carries out. This kind of
interface can be found out between the interface and the class.
QUESTION - What are Relationships in UML?
ANSWER - Dependencies, Generalization, and Association.
Dependencies -a change in specification of one thing may affect another thing.
Generalization-class subclass scenario, one entity inherits from other.
Associations-a room has walls, person works for a company.
Diagram:
Class Diagram
Object Diagram
Use case Diagram
Sequence Diagram
Collaboration Diagram
Statechart Diagram
Activity Diagram
Component Diagram
Deployment Diagram
Relationship Dependancy
Dependency is the relationship between two things in which a change in one thing may affect the other thing, but not
necessarily the reverse. Graphically, it can be represented as a dashed directed line, directed to the thing being
depended on.
Relationship Association
An association is a relationship that connects classes. Example of association is relationship between person and
company. An association is rendered as solid line.
Adornments of association
Name: You can use Name to specify the nature of association.
Role: Each class has specific role that participates in the relationship. We can specify role to the classes involve in
the relationship.
Multiplicity: It represents how many objects may be connected across an instance of an association.
Aggregation: It implies whole/part relationship where one class represents larger thing which consist of smaller
things.
Relationship Generalization
In this type of relationship, the child shares the structure and behavior of the parent. It is represented as a solid line
with a hollow arrowhead pointing to the parent.
Class Diagram
Class diagram represents a set of classes, interfaces and collaborations and their relationships.
Class diagram includes classes, interfaces, collaborations and their relationships.
It can be used to model
Collaboration of classes,
Database schema.
Object Diagram
Object diagram represents a set of objects and their relationships. It involves objects and links in the diagram. An
object diagram can be understood as an instance of a class diagram.
It is used to model object structure.
Sequence Diagram
Sequence Diagram shows structural organization of the objects that send and receive messages.
A sequence diagram emphasizes the time ordering of messages. The object that initiates the interaction placed at the
left and more subordinate objects to the right.
Collaboration Diagram
Collaboration Diagram represents organization of the object that participates in an interaction. We use links along
with messages that connect objects.
Statechart Diagram
Startchart Diagram represents a state machine, shows the flow of control from state to state. A state machine is the
sequences of state an object goes through during its lifetime in response to events.
Activity Diagram
An activity diagram represents the flow from activity to activity. It is used to model dynamic aspects of the systems.
It is just like flowchart that shows flow of control from activity to activity. Activities ultimately result into actions.
Activity diagram includes
Activity states and Action states
Transition
Objects.
Common use of activity diagrams are
To model a workflow: In this type, object flow is represented.
To model an operation: In this, operations are important that are shown as flowchart.
Define Activity diagram - Aug 12, 2009 at 10:00 AM by Shuchi Gauri
Componant Diagram
Component diagram represents set of components and their relationships. It basically includes components,
interfaces and their relationships in the diagram.
We can use this type of diagram in
Modeling source code,
Modeling executable releases,
Modeling Physical databases,
Modeling adaptable system.
Interfaces provided/required: Another compartment exists for displaying the interface provided and required by the
component.
Relationships: A lollipop and socket notation is used along with showing dependency arrows. Dependency arrow
points towards the needed socket and arrowhead connects with providers lollipop.
Subsystem: A subsystem is represented using a rectangle with stereotype <>subsystem name.
Deployment Diagram
Deployment Diagram shows the configuration of run time processing nodes and the components that live on them. It
is used for modeling topology of the hardware on which your system executes.
Contents of the diagram are
Nodes,
Dependency.
We can use this diagram in modeling
Client/Server systems,
Modeling fully distributed systems,
Modeling embedded systems.
Use Case
A use case diagram depicts different users of the system and the functions of the system. Actors interact
with a use case and the functions are called as use cases. Use cases diagrams describe the interaction
between the actor and the use case.
For e.g. a use case diagram for an ATM would involve the actor to be ATM and the user. Use cases could
be, withdraw money, deposit cheque
Class diagrams
Class diagrams shows the classes used in the system. Each class has some properties and operations.
Relationships between the classes are shown in class diagram. Different types of relationships exist
between the classes. It is a static view of system used to assist in modeling.
Association is allowing instance of object to perform an action on its behalf. E.g. A Student updates his Daily
task. Here Student and Task are the classes while update is the relation.
Generalization relationship says that one class may have more related classes. The main class is the super
class while the related classes are the subtypes.
E.g. Person is the main class. Employee and manager are the sub classes.
Realization exists between two classes when one of them must realize, or implement, the behavior specified
by the other. E.g. Employee daily tasks are updated by the Manager.
A Dependency relationship is when any change made to one class/interface cause the behavior of some
other class to change. E.g. changing task definition will change the employee status.
The multiplicity of the association denotes the number of objects that can participate in then relationship.
E.g. an employee will update one task, but the task is updated by multiple employees. The common
multiplicities are 0..1, 1, 0..*,1..*
Object diagrams are a more refined and concrete representation of a class diagram. It helps to view the
objects of the classes and the relationship between the objects. They help the user understand the complex
relationships between objects. To understand this, they are used to capture snapshots of a particular time
when or situation during program execution. Each object has an instance name and some attributes.
E.g. An Object Company will have instance name XYZ with attributes company_size, company_location
(company_name: Company). Another object will be employee with instance name as name of employee and
attributes employee_name, employee_age (employee_name : Employee)
Sequence of object diagrams are referred to as Film strips. This is because the object diagram is considered
as a snapshot. Like snapshot, an object diagram is taken for a particular situation.
Activity diagrams
Activity diagrams show the activities of a particular operation in the system. The activity diagram consists
of an initial mode; point from where the activity begins, activities involved and an activity final mode; point
where the activities end.
Activity diagrams describe the complete flow of the system and help to take actions. Fork and Join are two
very important concepts of the system. When one activity is split into sub activities it shows a Fork. When
two or more activities join to form one activity it is called as a JOIN. Similar to flow charts, Activity diagrams
can also have a decision box (Diamond).
E.g. An activity of an employee updating a task. Here, the initial mode is Receive task. Receive task can be
split into Fill task and Update task (FORK). Update task can be split into Update task weekly and update
task monthly. These two tasks can JOIN to an activity Submit task. Here, Submit task is the Final
mode.
State diagrams are used to show the different states a class or object can go through. When a state
changes it means a transition has occurred. An event may cause a transition to occur. A state represents the
state of an object or class. An arrow indicates the transition from one state to another. An event may also
cause a message or signal to be sent across <>. When a state is in wait, it is called as a history state (H).
E.g. A state diagram for a Computer will be. Start -> Boot ->Login > Use
Packages in UML organize different structural or behavioral features of the system into groups. These
features are known as model elements. Packages makes UML diagram easy to understand. Packages are
shown as a file folder in UML. Packages can be used in almost all diagrams and has a unique name.
Model Management aims to assist the model driven applications like UML, DFDs to merge two or more
models. A merge, which returns an integration of two models based on a mapping. Model Management
needs to be generic.
Designing a model based on User experiences is termed as user experience modeling. Based on the users
past experience using a similar application, a model can be designed. This may include observing users in
context, observing what people say and do. It helps to transform and redefine this user experience. The user
model considers the goals of the user, what the user expects from the system. This helps in designing a
model best suited for the user needs.
E.g. designing a model for a web application. This will involve analysis user experiences on the concept.
Kind of interface and look and feel he expects. Functionality he expects the system to deliver.
Business Modeling
Business modeling is used to represent various features, strategies, offerings, practices of a business. From the
perspective of a system, it helps improve the software development process. It may also focus on the internal working
of the business requirements. A business model helps an organization to get revenues. Business modeling comes
into play when new and innovative ideas needs to be implemented for competition. Almost all UML diagrams can be
used for Business modeling. Using UML to model the business and requirements can help to solve problems in the
right way.
Enterprise Architecture
Enterprise architecture describes the practices used for documenting business strategies, business models,
requirements, policies etc. Enterprise architecture can be managed using different tools available in the market.
These tools help to manage complex information, design software, requirements management etc. Business
architecture improves decision making, adaptability to changing demands or market conditions, reduction of
inefficient and redundant processes. Structure and operation of an organization is well defined using Enterprise
architecture.
Change management:
Change management involves managing of changes in the system. Managing changes would involve Identifying the
change, analyzing, evaluation of change, plan, implement, Review and close change. Identifying change plays an
important role in initiating the change management. Change could either be a new request or requirement or change
in an existing requirement. Analyzing change will identify how well can the system adapt to the change, what changes
need to be made to the system. Changes need to be communicated for implementation. On implementation change
is reviewed and closed.
Actor: Actor represents an external user / end user who interact with the system.
Unit: A unit is a subsystem, or a sub component or other entity within the system.
b. State: All the states an object can go in are mentioned in this. It is represented by a rectangle with rounded edges.
c. Transitions: depicted by arrow from the source state to destination state.
d. Final State: Depicts the end of the. It is shown by a bull's eye symbol.
Initial State: This state shows the first activity of the flow.
State: A state represents the state of an object at a particular given point of time.
Transition: The transition from one state to another state of objects is represented by an arrow.
Signal: When a message or a trigger caused by an event to a state, which causes a transition, this
message is called as a signal.
Final State: The state diagram ends with a diagram that depicts a bulls eye is known as Final State.
Object: The interaction between objects takes place in a system. An object is depicted by a rectangle with
the name of the object, preceded by a colon and underline.
Relation/Association: Association among objects is linked by connecting them. The cardinality can be
depicted by placing qualifiers on either ends.
Messages: An arrow that commencing from one object to the destination object. This depicts the interaction
between objects. The sequence or order of the interaction is depicted by the number.
Nodes: A node represents any hardware component. The configuration of hardware is represented by
attributes of nodes.
Components: A component represents software. Each component straightly represents a class or object
that in turn represents methods.
Dependencies: The reliability of one component with that of another is depicted by dependencies.
Links: To tie up tow nodes, the links are utilized. The links are implemented by using nodes and their
associations.
UML is an industry-standard language for specifying, visualizing, constructing, and documenting the
artifacts of software systems.
Using UML, developers can put down good architectural foundation that can allow easy maintainence of
the system.
UML presents structure of whole system which can be easily visualised and understand by developer.
What is DSS?
-DSS is the acronym stands for decision support system.
-DSS is used vastly in the enterprise applications , mainly MIS & ERP based SYSTEMS.
-DSS provides automation & stabilty in the decision making process of the organisation .
-DSS is of two types , i.e. structured & unstructured.
-DSS connects many flow charts in organisational process.
-DSS is used profoundly by the top level management for STRATEGY formulation & planning.
-DSS integrates many business logics with the organisational operational functions.
-DSS can be formulated & built statistically or stochastically.
4. The political issues within the organization and between various stakeholders.
5. The marketplace changes.
6. Law changes. This might change some legal aspects of the system based on what was being made. For example,
if a taxation system is needed, Tax policies might change and system might needs to be changed as per the latest
laws.
Why might you use paper rather than software when prototyping?
1. There are many different ideas about the design.
2. When the tools the designer wants to use in creating a prototype are not available.
3. There are parts of the design you're unsure about.
4. You need to provide a new solution to the users in order to change the way that the users perform a task.
5. Users or stakeholder's are not well versed with computerized designs.
6. When the designer wants to make a sincere effort to allow all members of a team, including those with limited
software skills, to take part in the design process.
Initiation: Preparing scope document, requirement documents, Estimation chart, project plan and proposal
documents
Waterfall model :This is the oldest model. It represents sequence of stages; output of one stage becomes
input of others.
Spiral Model: This is improved version of waterfall model. Here we have scope to reiterate and go back to
the earlier stages number of times as project progresses.
Build and fix model: This is a risky and most unorganized model. In this, developers keep writing code until
the customer is happy.
Rapid Prototype Model : In this model, we develop prototype which acts like a final product. Once
prototype is approved, then the actual development starts.
Incremental Model:In this model, the product is divided into sections and each section of the product are
created and tested separately.
d. Documentation Testing
e. Robustness Testing
Whats the difference between Unit testing, Assembly testing and Regression testing?
Unit testing ensures that the program unit meets the requirements which are reliable. Unit testing is normally
conducted by the programmer who is supervised by the team lead. Testing the individual unit is the main objective of
unit testing. Unit testing follows white box testing style.
Assembly testing demonstrates the interaction among modules in a correct, stable and proper manner which was
defined in the functional requirements that are provided by the client. Assembly testing follows black box testing style.
Regression testing ensures the proper functionality of an application irrespective of changes or enhancements to the
system. The testers will run all the scripts in order to ensure that nothing has been affected.
Six Sigma
It is a methodology and set of tools for the measurement of process quality. It demonstrates that the business
process is well controlled. Six Sigma level can be achieved when the accuracy of your process gets only 3.4 defects
per million opportunities.
Heres the list of acceptable number of defects per million to correspond to each Sigma level:
Sigma level
1
2
3
4
5
6
External Inputs: It is an elementary process which allows the data to cross the boundary from outside to
inside.
External Outputs: A elementary process which allows the data passes across the boundary from inside to
outside
External Inquiry: It is an elementary process which has both input and output components which results data
retrieval from one or more internal logical files and external interface files.
Internal Logical Files: An identifiable group of logically related data that resides entirely within the
applications boundary and is maintained through external inputs.
External Interface Files: An identifiable group of logically related data that is used only for reference purpose.
The data is completely persisted outside the application and is maintained by another application.