Lab Manual of Software Architecture CS701

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 59

SHIVAJIRAO KADAM INSTITUTE OF

TECHNOLOGY &
MANAGEMENT,INDORE(M.P.)

LABORATORY MANUAL
SOFTWARE ARCHITECTURE
(CS 701)
SESSION: JULY-DECEMBER 2022

Department of Computer Science & Engineering


Shivajirao Kadam Institute of Technology &
Management,Indore Department of Computer Science and
Engineering
Lab Work
Subject: Software Architecture Subject Code: CS-701 Session: July-Dec
2020 Tools/Language Used: Rational Rose/Orbacus/C++/Java

Outcome of the Mapping with CO


S. No. Title Objective of the Experiment Problem Statement
Experiment CO1 CO2 CO3 CO4 CO5
For weather management system identify the actors involved and How to associate use
Understanding actors & process invovled for designing a then create the usecase for that and provide appropriate
1 UseCase View cases with different √ √
software system architecture documentation using Rational Rose types of relationships
For the WMS ,identify using a cause-effect (sub) tree the risks hierarchy
To understand the design issues and the risks that may lead to the materialization of this risk. Describe these risks Must be able to
2 Risk Analysis and corresponding reduction measures by providing a risk registry. translate a risk √
underlying the construction of the system
involved into a design

Consider ABC neighbouring travel agent from whom you can purchase Identify the use cases
flight tickets. To book a ticket you need to provide details about your from a given non-trivial
journey i.e. on which date and at what time you would like to travel. You problem statement
3 Design planning To identify the primary & secondary actor for a system also need to provide your address. The agency has recently been √ √
modernized. So you can pay either by cash or by card. You can also
cancel a booked ticket later if you decide to change your plan. In that
Consider a bulb with a push down switch. The bulb initially remains off. Identify the events
State chart & When the switch is pushed down, the bulb is on. Again when the switch causing transitions
4 Identify the distinct states a system have is pushed up, the bulb turns off. The lifecycle of the bulb continues in √
Activity Model from one state to
this way until it gets damaged another
For a cab amanagement system,if any passenger books a cab , an Identify a list of
available cab is allocated for to the request. A booking receipt is given to potential domain
5 Domain Class Understand the concept of domain classes the passenger. He/She is then dropped to his/her destination. In case classes from a given √
the place is in too interior, the passenger is dropped at the nearest problem statement
landmark.
Consider a trading system, where trading decisions are based on To visualize where
information collected from three different sources: a stock ticker, an two flows of control
6 Architecture View To understand the process & thread view index watcher, and a CNNNewsFeed. Information from the stock ticker might cross paths √
and the index watcher are first analyzed and then forwarded to the
trading manager via an alert manager. The CNNNewsFeed
communicates
directly with the Trading manager. Logical view and
identify and book all at once the best deal in terms of flight, hotel, car dividing the logical
Implementation To understand the concurrency & synchronization rental etc. Model a basic scenario where a customer uses the system entities into actual √
7
View mechamism to book flight and hotel room by highlighting the concurrency and software
synchronization involved.
To identify how to
You are building a quote application, which contains a class that is provide solutions to
responsible for managing all of the quotes in the system. It is important commonly recurring
8 Pattern To understand the Design pattern that all quotes interact with one and only one instance of this class. √
design issues
How do you structure your design so that only one instance of this class
is accessible within the application?
An invoice processing system checks issued invoices against payments
Architecture To understand the component and connector received, and accordingly, issues either receipts or payment
9 Pipes & Filter √
pattern types involved in the system reminders for customers
Outcome of the Mapping with CO
S. No. Title Objective of the Experiment Problem Statement
Experiment CO1 CO2 CO3 CO4 CO5
The stock trading application must allow users to buy and sell stocks, Provides a flexible
watch the activity of stocks. The user is presented with a list of structure for
Model-View- To understand how to developing interactive available stocks identified by their stock symbols. The user can select a developing
10 √
Controller Pattern applications. stock and then press a View stock button. That results in a report about interactive
the stock: a spreadsheet or a graph that shows the stock price over applications
some interval.

Faculty Incharge Practical Coordinator H. O. D.


Prof. Rashmi Vijaywargiya Prof. Rashmi Dr. Rashmi Yadav
Vijaywargiya
Shivajirao Kadam Institute of Technology & Management, Indore
Department of Computer Science and Engineering
Experiment-wise Laboratory Performance Evaluation

Academic Session: July- December 2022 Semester & Batch: 7 Semester


Name of Lab: Software Architecture Course Code:CS-701
Name of Experiment: For weather management system identify the actors CO No.
involved and then create the use case for that and provide appropriate
documentation using Rational Rose CO 1& 3

Group*: <if any> Type**: Periods needed***:


Name of Student: *** Enrollment No.***

Date of Experiment Date of Submission

*** ***

Grade and remark by the tutor Score (0- 10) Remark / Reason
1. Clarity about the Objective and Outcome of
experiment
2. Submitted the work in desired format

3. Shown capability to solve the problems

Average (out of 10)

1. Title: Use Case View.

2. Outcome: How to associate use cases with different types of relationships.

3. Objectives & Value Addition: Understand the use case view of software architecture.
4. References:

1. Bass, L., P. Clements, & R. Kazman, “Software Architecture in Practice”, 2


Ed, Prentice-Hall.
2. Jim Keogh, “J2EE – Complete Reference”, Tata McGraw Hill.
3. Dikel, David, D. Kane, and J. Wilson, “Software Architecture: Organizational
Principles and Practices”, Prentic -Hall.
5. Tutorial Problem:-
(Embedded) Cellular Telephone System

6. Experimental setup with list of equipment, components, and expectations


1.2 Hardware & Software Requirement
Minimum Hardware Requirement:
Processor : Pentium 4
RAM : 128MB
HDD Space: 40GB
Minimum Software Requirement:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA
7. Quiz & Viva Questions

Quiz

1. Use case descriptions consist of interaction among which of the following?

a) Product

b) Use case

c) Actor

d) Product & Actor

2. Use case description contents include

a) Use case name and number

b) Actors

c) Stakeholder and needs

d) All of the mentioned

3. Which of these statements are truly acceptable?

a) A precondition is an assertion guaranteed to be true when the activity or operation finishes

b) A post condition is an assertion guaranteed to be true when the activity or operation begins

c) Trigger is an event which cause a use case to begin

d) None of the mentioned


4. Which descriptions are true for the use case description format?

a) Underline text refers to another use case

b) Extensions section uses complicated numbering scheme

c) Indentation is used in order to make extensions easier to read

d) All of the mentioned

5. What are the methods in which use case descriptions can be written?

a) Actors in a use case are almost always stakeholders

b) Preconditions must be true before statement begins

c) Need list should be reviewed when writing each use case

d) All of the mentioned

Viva

1. What is Use Case diagram?

2. What is Use Case?

3. What is actor in Use Case diagram?

4. What is the difference between Usecases & Use Case diagrams?

To be Done by the Student

8.1 Hardware & Software

Used Hardware Used:


Processor: Intel Core i3
RAM: 4GB DDR-3
HDD Space: 200 GB

Software Used:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA

8.Theoretical solution of the instant problem

1.The following actors may be identified from the requirements: Instrument, Weather
Instrument, Pollution Instrument, Operator, Digitized map database and Consumer. Actor
documentation: -
Operator: a person who is responsible for the maintenance of the weather mapping system. -
Consumer: a person who uses or needs the weather information produced by the system. -
Weather Instrument: weather sensors related to weather stations used to collect raw weather
data.
- Pollution Instrument: air data sensors used to collect air data for pollution monitoring. -
Instrument: generalization of weather and pollution sensors. - Digitized map database: an
existing database containing mapping information. 2.The following needs must be addressed by
the system: - The Consumer actor needs to use the system to view or print weather maps. -
Weather sources collect weather data and send them on request to the area computer. - The area
computer validates, integrates and archives the weather data collected, and then processes
weather maps. - The digitized map database provides the mapping information needed to process
local weather maps. - The Operator actor manages and maintains the system. - The area
computer monitors the weather sources, for start-up, shutdown, and for instrument testing and
calibration. Needs: Based on these needs, the following use cases may be identified: - Startup -
Shutdown WMS Weather Instrument Operator Consumer Digitized map database Pollution
Instrument - Collect data - Calibrate - Test - Validate - Integrate - Archive - Process map -
Display - Print You may identify different use cases (or the same use cases with different
names).
In all cases the sum of the use cases identified must cover all the key functionalities mentioned in
the needs. That should appear through the documentation that you will provide. Use Case
Documentation: The documentation provided for a use case consists of a brief description of the
purpose of the use case in a few sentences. For instance, a brief description of the Collect data
use case may be: The operator or the system starts this use case. It consists of sending a request
for data collection to the weather sources, which collect and summarize weather data from the
instruments and send them to the area computer.

9.Results
After performing this practical successfully student would understand the use case views and the
various relationships associated with them

10. Solved Tutorial Problems


1. What is a Use Case diagram?

1. Use case diagram is UML diagram which shows some business or software system, its
external users (called actors), and a set of actions (called use cases) that users of the system
should or
can perform while using the system. Use case diagrams are used to describe functionality of a
system from the point of view of external users.

2. What is a Use Case?

2. Each use case describes a unit of complete and useful functionality that business or system
provides to its users, how an external user interacts with a system to achieve a desired
result. Some examples of use cases: Hire employee, Buy ticket, Place order, Deposit funds.

3.What is the actor in the Use Case diagram?

3. Actor represents some group (called "role") of external customers or users of the business
or software system. Actors have some needs and require specific services from the system.
Some examples of actors are: Customer, Student, and Passenger. Actor could be not just
human but also another system, business, or device.

4. What is the difference between Use Cases & Use Case diagrams?

4.Use case diagram shows business or system, its external users, and use cases applicable to the
system. Use case represents one specific goal or need of the user from the system.
Shivajirao Kadam Institute of Technology & Management, Indore
Department of Computer Science and Engineering
Experiment-wise Laboratory Performance Evaluation

Academic Session: July- December 2022 Semester & Batch: 7 Semester


Name of Lab: Software Architecture Course Code:CS-701
Name of Experiment: For the WMS ,identify using a cause-effect (sub) tree CO No.
the risks hierarchy that may lead to the materialization of this risk. Describe
these risks and corresponding reduction measures by providing a risk registry CO 1

Group*: <if any> Type**: Periods needed***:


Name of Student: *** Enrollment No.***

Date of Experiment Date of Submission

*** ***

Grade and remark by the tutor Score (0- 10) Remark / Reason
1. Clarity about the Objective and Outcome of
experiment
2. Submitted the work in desired format

3. Shown capability to solve the problems

Average (out of 10)

1. Title: Risk Analysis

2. Outcome: How to associate use cases with different types of relationships.

3. Objectives & Value Addition: Understand the design issues and the risk underlying the construction of
the system.
4. References:

1. Bass, L., P. Clements, & R. Kazman, “Software Architecture in Practice”, 2


Ed, Prentice-Hall.
2.Jim Keogh, “J2EE – Complete Reference”, Tata McGraw Hill.
3.Dikel, David, D. Kane, and J. Wilson, “Software Architecture: Organizational
Principles and Practices”, Prentic -Hall.
5. Tutorial Problem:-
Provide the use case view for the architecture of an ATM System

6. Experimental setup with list of equipment, components, and expectations


1.2 Hardware & Software Requirement
Minimum Hardware Requirement:
Processor : Pentium 4
RAM : 128MB
HDD Space: 40GB
Minimum Software Requirement:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA
7. Quiz & Viva Questions

Quiz

1.The Use case Description Heuristics includes which of these?

a) Fill in the use case template from top to bottom

b) Write simple declarative sentences in active voice

c) Avoid sequence of steps by the actors and product

d) All of the mentioned

2.A different alternative must consists of?

a) Different Actors

b) Different Use cases

c) Different Overall product functionality

d) All of the mentioned

3. Which of the following statement is true?

a) Interactions supported by a product are cataloged in a use case description

b) Interactions are refined in use case diagram

c) All of the mentioned


d) None of the mentioned

4.Which steps are included in use case driven iterative development?

a) At each iteration, one or more use cases are selected for implementation

b) Iteration should be followed until the system is complete

c) Iterative development builds system functionality gradually through analysis, design, coding,
testing and evaluation

d) All of the mentioned

5.What is true in context to extensions?

a) Once the basic flow is defined, the extensions can be specified

b) The alternatives are called extension as they extend the activity flow in a different
direction from branch point

c) All of the mentioned

d) None of the mentioned

Viva

1.What do you understand by UML?

2.Can you name the types of modelling?

3. What are the different views that have to be considered before the buildup of an object
oriented software system?

4. Can you tell us a few advantages of creating a model?

To be Done by the Student

8.1 Hardware & Software

Used Hardware Used:


Processor: Intel Core i3
RAM: 4GB DDR-3
HDD Space: 200 GB

Software Used:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA
8.Theoretical solution of the instant problem

1.The following actors may be identified from the requirements: Instrument, Weather
Instrument, Pollution Instrument, Operator, Digitized map database and Consumer. Actor
documentation: -

Operator: a person who is responsible for the maintenance of the weather mapping system. -
Consumer: a person who uses or needs the weather information produced by the system. -
Weather Instrument: weather sensors related to weather stations used to collect raw weather
data.
- Pollution Instrument: air data sensors used to collect air data for pollution monitoring. -
Instrument: generalization of weather and pollution sensors. - Digitized map database: an
existing database containing mapping information. 2.

The following needs must be addressed by the system: - The Consumer actor needs to use the
system to view or print weather maps. - Weather sources collect weather data and send them on
request to the area computer. - The area computer validates, integrates and archives the weather
data collected, and then processes weather maps. - The digitized map database provides the
mapping information needed to process local weather maps. - The Operator actor manages and
maintains the system. - The area computer monitors the weather sources, for start-up, shutdown,
and for instrument testing and calibration. Needs: Based on these needs, the following use cases
may be identified: - Startup - Shutdown WMS Weather Instrument Operator Consumer Digitized
map database Pollution Instrument - Collect data - Calibrate - Test - Validate - Integrate -
Archive - Process map - Display - Print You may identify different use cases (or the same use
cases with different names). In all cases the sum of the use cases identified must cover all the key
functionalities mentioned in the needs.

That should appear through the documentation that you will provide. Use Case Documentation:
The documentation provided for a use case consists of a brief description of the purpose of the
use case in a few sentences. For instance, a brief description of the Collect data use case may be:
The operator or the system starts this use case. It consists of sending a request for data collection
to the weather sources, which collect and summarize weather data from the instruments and send
them to the area computer.

9.Results
After performing this practical successfully student would understand the use case views and the
various risks associated with them

10. Solved Tutorial Problems

1. What do you understand by UML?


1. UML stands for the Unified Modelling Language and it is also a graphical language for
visualization, construction and documenting for the artifacts of any of the system. You can
efficiently create the blueprints for various aspects before the actual physical implementation of
the system occurs.

2. Can you name the types of modelling?

2. There are basically three types of modeling used

● Architectural modeling
● Behavioral modeling
● Structural Modeling.

3. What are the different views that have to be considered before the buildup of an
object oriented software system?
3. Before the actual building up of an object-oriented software system, there are generally
5 views-

● Use case view - it exposes the requirements of any system.


● Design view - it captures the vocabulary of the system.
● Process view - this view models the distribution across the system.
● Implementation view - this view addresses the implementation of the system.
● Deployment view - this view focuses over the components which are required for
the deployment of the system.

4. Can you tell us a few advantages of creating a model?

4. There are a number of advantages for creating any model like:

● They help to document the entire system.


● They help to make templates for the construction in the system.
● They help in the visualization of the system.
● The structural dimensions of a system can be specified.
● Modeling is entirely accepted by the engineering technique.
Shivajirao Kadam Institute of Technology & Management, Indore
Department of Computer Science and Engineering
Experiment-wise Laboratory Performance Evaluation

Academic Session: July- December 2022 Semester & Batch: 7 Semester


Name of Lab: Software Architecture Course Code:CS-701
Name of Experiment: CO No.
Consider ABC neighbouring travel agent from whom you can purchase flight tickets. To book a ticket you need to
provide details about your journey i.e. on which date and at what time you would like to travel. You also need to
provide your address. The agency has recently been modernized. So you can pay either by cash or by card. You can CO 1 &
also cancel a booked ticket later if you decide to change your plan. In that case you need to book a new ticket again.
Your agent also allows you to book a hotel along with flight ticket. While canceling a flight ticket you can also cancel
3
hotel booking.
Appropriate refund as per policy is made in case of cancellation.

Group*: <if any> Type**: Periods needed***:


Name of Student: *** Enrollment No.***

Date of Experiment Date of Submission

*** ***

Grade and remark by the tutor Score (0- 10) Remark / Reason
1. Clarity about the Objective and Outcome of
experiment
2. Submitted the work in desired format

3. Shown capability to solve the problems


Average (out of 10)

1. Title: Design Planning

2. Outcome: Identify the use cases from the given nontrivial problem statement.

3. Objectives & Value Addition: To understand the primary & secondary actors for a systems
4. References:

1. Bass, L., P. Clements, & R. Kazman, “Software Architecture in Practice”, 2


Ed, Prentice-Hall.
2.Jim Keogh, “J2EE – Complete Reference”, Tata McGraw Hill.
3.Dikel, David, D. Kane, and J. Wilson, “Software Architecture: Organizational
Principles and Practices”, Prentic -Hall.
5. Tutorial Problem:-
A company in charge of the development of an Hospital Information System has charged one
of its subcontractors of the development of the Patient Monitoring subsystem, which is a
critical part of the system. Due to high competition, short time-to-market is essent

6. Experimental setup with list of equipment, components, and expectations


1.2 Hardware & Software Requirement
Minimum Hardware Requirement:
Processor : Pentium 4
RAM : 128MB
HDD Space: 40GB
Minimum Software Requirement:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA
7. Quiz & Viva Questions

Quiz

1.Which of these states the goal of engineering design analysis?

a) To understand an engineering design problem

b) To provide an solution for a given problem

c) All of the mentioned

d) None of the mentioned

2. What is Architecture of a software based on?

a) Design

b) Requirements

c) All of the mentioned

d) None of the mentioned

3. What would happen if different organization were given same set of requirements?

a) It will produce same architecture

b) It will produce different architecture


c) It may or may not produce same architecture

d) None of the mentioned

4. What factors does a software architecture results in?

a) Technical

b) Business

c) Social

d) All of the mentioned

5. What does Software architecture means?

a) It is the structure or structure of systems

b) It comprises of software components

c) Relationship among components

d) All of the mentioned

Viva

1. What are the modelling diagrams that are most commonly used?

2. Can you give us a brief defining the

architecture? 3.When to use a use-case diagram?

4.How do you ensure that your use case model is effective?

To be Done by the Student

8.1 Hardware & Software

Used Hardware Used:


Processor: Intel Core i3
RAM: 4GB DDR-3
HDD Space: 200 GB

Software Used:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA
8.Theoretical solution of the instant problem
Use Case View Captures system functionality as seen by users Built in early stages of
development Developed by analysts and domain experts System behavior, that is what
functionality it must provide, is documented in a use case model. Use Case Model illustrates the
system’s intended functions (use cases), its surroundings (actors), and relationships between the
use cases and actors (use case diagrams). ÷provides a vehicle used by the customers or end users
and the developers to discuss the system’s functionality and behavior. ÷starts in the Inception
phase with the identification of actors and principal use cases for the system, and is then matured
in the elaboration phase, by adding more details and additional use cases.

9.Results
After performing this practical successfully student would understand the use case views and the
different actors involved in a system and the relationship associated with them.
10. Solved Tutorial Problems

1. What are the modelling diagrams that are most commonly used?

1. The most frequently used modeling diagrams are 9 in number. These are as:

● Use case diagram


● Class diagram
● Object diagram
● Sequence diagram
● State chart diagram
● Collaboration diagram
● Activity diagram
● Component diagram
● Deployment diagram

2. Can you give us a brief defining the architecture?

2. Architecture means with the structural and behavioral aspects of the entire software system. It
significantly monitors over the software usage and the functionality evolving around it. With
architecture, the entire performance is economical and all the technical constants can be well
managed.

3. When to use a use-case diagram?

3.A use case is a unique functionality of a system which is accomplished by a user. A purpose of
use case diagram is to capture core functionalities of a system and visualize the interactions of
various things called as actors with the use case. This is the general use of a use case
diagram.The use case diagrams represent the core parts of a system and the workflow between
them. In use case, implementation details are hidden from the external use only the event flow is
represented.With the help of use case diagrams, we can find out pre and post conditions after the
interaction with the actor.
4. How do you ensure that your use case model is effective?

4.Many analysts have at least some level of theoretical knowledge on how to properly apply use
case modeling. Unfortunately, key elements are often missed resulting in a use case model
which isn’t effective.Use case models include actors and use cases. An effective model must
identify both comprehensively. Yet, analysts usually fail to identify all of the relevant actors.
Shivajirao Kadam Institute of Technology & Management, Indore
Department of Computer Science and Engineering
Experiment-wise Laboratory Performance Evaluation

Academic Session: July- December 2022 Semester & Batch: 7 Semester


Name of Lab: Software Architecture Course Code:CS-701
Name of Experiment: Consider a bulb with a push down switch. The bulb CO No.
initially remains off. When the switch is pushed down, the bulb is on.
Again when the switch is pushed up, the bulb turns off. The lifecycle of the CO 1
bulb
continues in this way until it gets damaged.
Group*: <if any> Type**: Periods needed***:
Name of Student: *** Enrollment No.***

Date of Experiment Date of Submission

*** ***

Grade and remark by the tutor Score (0- 10) Remark / Reason
1. Clarity about the Objective and Outcome of
experiment
2. Submitted the work in desired format

3. Shown capability to solve the problems

Average (out of 10)

1. Title: State chart & activity model

2. Outcome: Identify the events causing transitions from one state to another.

3. Objectives & Value Addition: Identify the distinct states a system have in the system
4. References:

1. Bass, L., P. Clements, & R. Kazman, “Software Architecture in Practice”, 2


Ed, Prentice-Hall.
2.Jim Keogh, “J2EE – Complete Reference”, Tata McGraw Hill.
3.Dikel, David, D. Kane, and J. Wilson, “Software Architecture: Organizational
Principles and Practices”, Prentic -Hall.
5. Tutorial Problem:-
Warehouse Management system:-We are delivering an automated system that will run a big
warehouse that is being upgraded to improve its accuracy and increase its capacity by doubling
its throughput. We expect to reduce number of mistakes in what is sent to branches to a third of
its current value

6. Experimental setup with list of equipment, components, and expectations


1.2 Hardware & Software Requirement
Minimum Hardware Requirement:
Processor : Pentium 4
RAM : 128MB
HDD Space: 40GB
Minimum Software Requirement:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA
7. Quiz & Viva Questions

Quiz

1.Which among these are the notations which are used to represent software architecture?

a) UML activity diagram

b) UML use case diagram

c) UML class diagram, Interaction diagram

d) All of the mentioned

2. Which of these notations are followed under type of specification as decomposition?

a) Box and line diagrams

b) State diagrams

c) Sequence and communication Diagrams

d) All of the mentioned

3. Which of the following are true?

a) A unit’s responsibilities are usually indicated by various connections and by the


respective names
b) A unit’s relationships are usually indicated in part by its name and in part by the symbols
used to represent it in various diagrams

c) All of the mentioned

d) None of the mentioned

4. Interface specification as descriptions of communication includes which of the following?

a) Syntax

b) Semantics

c) Pragmatics

d) All of the mentioned

5. Which of the following is false about interface specifications?

a) The syntax of communication specifies the elements of medium and the ways they may be
combined to form legitimate messages

b) The semantics of a communication medium specify the meaning of messages

c) All of the mentioned

d) None of the mentioned

Viva

1.Can you tell us a few advantages of creating a model?

2.What are the messages and dynamic diagrams in

UML?

3.Can you name the different elements with the collaboration

diagram? 4.What are the elements which are used in activity

diagrams?

5.Tell us the difference between activity and sequence diagrams?

To be Done by the Student

8.1 Hardware & Software

Used Hardware Used:


Processor: Intel Core i3
RAM: 4GB DDR-3
HDD Space: 200 GB

Software Used:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA

8. Theoretical solution of the instant problem


A state diagram (also called state machine diagram, statchart and start transition diagram) is a

type of diagram behavior diagram in UML. In most OO techniques, state diagrams are drawn for

a single class to show the lifetime behavior of a single object. They describe all of the possible

states that a particular object (or even the entire system) can get into. State Machines give us the

means to control decisions and each state is like a 'mode of operation' for the object which

behaves differently depending on its state.

What is Activity Diagram?

Activity diagrams describe activities which involve concurrency and synchronization, which are

a variation of state diagrams that focuses on the flow of actions and events. They can be used for:

● To model a human task (a business process, for instance).

● To describe a system function that is represented by a use case.


● In operation specifications, to describe the logic of an operation.

Activity Diagram vs State Machine Diagram

Activity Diagram

In UML semantics, Activity Diagrams are reducible to State Machines with some additional

notations that the vertices represent the carrying out of an activity and the edges represent the

transition on the completion of one collection of activities to the commencement of a new

collection of activities. Activity Diagrams capture high level activities aspects. In particular, it is

possible to represent concurrency and coordination in Activity Diagrams.


9. Results
After performing this practical successfully student would understand the use case views and the
different actors involved in a system and the relationship associated with them.

10. Solved Tutorial Problems


1.Can you tell us a few advantages of creating a model?
1. There are a number of advantages for creating any model like:

They help to document the entire system.


They help to make templates for the construction in the system.
They help in the visualization of the system.
The structural dimensions of a system can be specified.
Modeling is entirely accepted by the engineering technique.

2. What are the messages and dynamic diagrams in UML?


2. Messages are the specifications for any sort of communication. When a message is passed then
the estimated action is expected which is basically a statement for the execution that held prior.
Dynamic diagrams are also called the behavioral diagrams. The names of few of the dynamic
diagrams are:

● Use case diagram


● Sequence diagram
● Collaboration diagram
● Activity diagram
● Statechart diagram

3. Can you name the different elements with the collaboration diagram?

3.There are basically three types of elements of a collaborative

diagram:

● Object - the interaction in a system always takes place between two objects. An object is
always depicted by a rectangle with the name of the object. This is preceded by a colon
and an underline.
● Relation - it is also known as an association which is always among the objects which
are linked with the connection in a system. They are depicted by placing the qualifiers on
both ends.
● Message - An instance of communication from one point to the other significant point
or destination is a message. It always depicts the interaction that is offering between the
objects in a system. The sequence of this interaction is directly shown by the number.

4. What are the elements which are used in activity diagrams?

4.The significant elements which are used in activity diagrams


are:

● Activities - it indicates the action which has to be performed or had been performed in
the system.
● Transitions - they are represented by an arrow and used to indicate the floor that is
occurring among the elements in the diagram.
● Decision points - in the system the logical branching is highlighted by the decision
points.
● States - these are indicated in order to mention the milestones for the processing
of activity diagrams and is shown by a rounded rectangle.

5. Tell us the difference between activity and sequence diagrams?

5. Sequence diagrams basically show the way of processing or the execution of the process
with any of the sequences. Sequence diagrams are entirely focused on the representative
interaction among different objects.On the other hand, activity diagrams actually detect the
following phases-

● Depicts the operational workflow in a system.


● Shows the actions and sequences for a number of objects
Shivajirao Kadam Institute of Technology & Management, Indore
Department of Computer Science and Engineering
Experiment-wise Laboratory Performance Evaluation

Academic Session: July- December 2022 Semester & Batch: 7 Semester


Name of Lab: Software Architecture Course Code:CS-701
Name of Experiment: For a cab management system,if any passenger books a CO No.
cab , an available cab is allocated for the request. A booking receipt is given to
the passenger. He/She is then dropped to his/her destination. In case the place CO2
is too interior, the passenger is dropped at the nearest landmark.

Group*: <if any> Type**: Periods needed***:


Name of Student: *** Enrollment No.***

Date of Experiment Date of Submission

*** ***

Grade and remark by the tutor Score (0- 10) Remark / Reason
1. Clarity about the Objective and Outcome of
experiment
2. Submitted the work in desired format

3. Shown capability to solve the problems

Average (out of 10)

1. Title: Domain Class

2. Outcome: Identify a list of potential domain classes from a given problem statement.

3. Objectives & Value Addition: Understand the concept of domain classes


4. References:

1. Bass, L., P. Clements, & R. Kazman, “Software Architecture in Practice”, 2


Ed, Prentice-Hall.
2.Jim Keogh, “J2EE – Complete Reference”, Tata McGraw Hill.
3.Dikel, David, D. Kane, and J. Wilson, “Software Architecture: Organizational
Principles and Practices”, Prentic -Hall.
5. Tutorial Problem:-
Hospital Management System. The domain model for the Hospital Management System is
represented by several class diagrams. The purpose of the diagram is to show and explain
hospital structure, staff, relationships with patients, and patient treatment terminology.

6. Experimental setup with list of equipment, components, and expectations


1.2 Hardware & Software Requirement
Minimum Hardware Requirement:
Processor : Pentium 4
RAM : 128MB
HDD Space: 40GB
Minimum Software Requirement:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA
7. Quiz & Viva Questions

Quiz

1.What does a simple name in UML Class and objects consist of?

a) Letters

b) Digits

c) Punctuation Characters

d) All of the mentioned

2.A Class consists of which of these abstractions?

a) Set of the objects

b) Operations

c) Attributes

d) All of the mentioned

3. An attribute is a data item held by which of the following?

a) Class

b) Object
c) All of the mentioned

d) None of the mentioned

4. What among the following statement is true?

a) Associations may also correspond to the relation between instances of three or more classes

b) Association lines may be unlabeled or they may show association name

c) All of the mentioned

d) None of the mentioned

5. An object symbol is divided into what parts?

a) Top compartment

b) Bottom Compartment

c) All of the mentioned

d) None of the mentioned

Viva

1. What Is Uml Architecture?

2. Define Modeling In Uml And It Advantages?

3.What Are The Different Views In Uml?

4.What Is Modeling? What Are The Advantages Of Creating A Model?

To be Done by the Student

8.1 Hardware & Software

Used Hardware Used:


Processor: Intel Core i3
RAM: 4GB DDR-3
HDD Space: 200 GB

Software Used:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version 4.5)
JAVA

8. Theoretical solution of the instant problem


Complex software systems involve a wide range of functionality, deployed on independent
processing nodes, involving a wide variety of languages, platforms, and technologies. ÷Example:
(a complex web-based system). Consists of the processes and threads that form the system’s
concurrency and synchronization mechanisms, as well as their interactions •Addresses issues
such as: -Concurrency and parallelism (e.g., synchronization, deadlocks etc.) -System startup and
shutdown -Performance, scalability, and throughput of the system. •Is captured using class,
interaction and state transition diagrams with a focus on active classes and objects.
Process: a heavyweight flow of control that can execute independently and concurrently with

other processes.

Thread: a lightweight flow that can execute independently and concurrently with other threads

within the same process.


9. Results
After performing this practical successfully students would understand the domain class view.

10. Solved Tutorial Problems


1. What Is Uml Architecture?

1. Takes care structural and behavioral aspect of a software system.Includes software


usage, functionality, performance, reuse, economic and technology constraints.
2. Define Modeling In Uml And Its Advantages?

2. Modelling in UML:-

○ Model is a simplification of reality.


○ Blueprint of the actual system.
○ Specify the structural and behavior of the system.
○ Templates for designing the system.
○ Helps document the system.

3.What Are The Different Views In

Uml?

3.Differents views are:-

○ Use Case view - Presents the requirements of a system.


○ Design View - Capturing the vocabulary.
○ Process View - Modeling the systems processes and threads.
○ Implementation view - Addressing the physical implementation of the system.
○ Deployment view - Model the components required for deploying the

system. 4.What Is Modeling? What Are The Advantages Of Creating A Model?

4.Modeling is a proven and well-accepted engineering technique which helps build a model.
Model is a simplification of reality; it is a blueprint of the actual system that needs to be
built. Models help to visualize the system. Models help to specify the structural and behavior
of the system. Models help make templates for constructing the system. Models helps
document the system.
Shivajirao Kadam Institute of Technology & Management, Indore
Department of Computer Science and Engineering
Experiment-wise Laboratory Performance Evaluation

Academic Session: July- December 2022 Semester & Batch: 7 Semester


Name of Lab: Software Architecture Course Code:CS-701
Name of Experiment: Consider a trading system, where trading decisions are CO No.
based on information collected from three different sources: a stock ticker, an
index watcher, and a CNNNewsFeed. Information from the stock ticker and the CO2
index watcher are first analyzed and then forwarded to the trading manager via
an alert manager. The CNNNewsFeed communicates directly with the Trading
manager.

Group*: <if any> Type**: Periods needed***:


Name of Student: *** Enrollment No.***

Date of Experiment Date of Submission

*** ***

Grade and remark by the tutor Score (0- 10) Remark / Reason
1. Clarity about the Objective and Outcome of
experiment
2. Submitted the work in desired format

3. Shown capability to solve the problems

Average (out of 10)

1. Title: Architecture View

2. Outcome: To visualize where two flows of control might cross paths

3. Objectives & Value Addition: Understand the concept of domain classesTo understand the process &
thread view
4. References:

1. Bass, L., P. Clements, & R. Kazman, “Software Architecture in Practice”, 2


Ed, Prentice-Hall.
2. Jim Keogh, “J2EE – Complete Reference”, Tata McGraw Hill.
3.Dikel, David, D. Kane, and J. Wilson, “Software Architecture: Organizational
Principles and Practices”, Prentic -Hall.

5. Tutorial Problem:-
Consider a trip planning service (e.g., expedia) that is used by travelers to identify and book all
at once the best deal in terms of flight, hotel, car rental etc. Model a basic scenario where a
customer uses the system to book flight and hotel room by highlighting the concurrency and
synchronization involved.

6. Experimental setup with list of equipment, components, and expectations


1.2 Hardware & Software Requirement
Minimum Hardware Requirement:
Processor : Pentium 4
RAM : 128MB
HDD Space: 40GB
Minimum Software Requirement:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA
7. Quiz & Viva Questions

Quiz

1.What does a simple name in UML Class and objects consist of?

a) Letters

b) Digits

c) Punctuation Characters

d) All of the mentioned

2.A Class consists of which of these abstractions?

a) Set of the objects

b) Operations

c) Attributes

d) All of the mentioned

3. An attribute is a data item held by which of the following?


a) Class

b) Object

c) All of the mentioned

d) None of the mentioned

4. What among the following statement is true?

a) Associations may also correspond to the relation between instances of three or more classes

b) Association lines may be unlabeled or they may show association name

c) All of the mentioned

d) None of the mentioned

5. An object symbol is divided into what parts?

a) Top compartment

b) Bottom Compartment

c) All of the mentioned

d) None of the mentioned

Viva

1.Explain About The Difficulties Of Interchange Format Of

Uml? 2.State Some Benefits Of Iterative Development?

3. Explain About Dependency?

4. Write Down The Main Phases Of Problem Solving Model?

To be Done by the Student

8.1 Hardware & Software

Used Hardware Used:


Processor: Intel Core i3
RAM: 4GB DDR-3
HDD Space: 200 GB
Software Used:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA

8.Theoretical solution of the instant problem


Complex software systems involve a wide range of functionality, deployed on independent
processing nodes, involving a wide variety of languages, platforms, and technologies. ÷Example:
(a complex web-based system). Consists of the processes and threads that form the system’s
concurrency and synchronization mechanisms, as well as their interactions •Addresses issues
such as: -Concurrency and parallelism (e.g., synchronization, deadlocks etc.) -System startup and
shutdown -Performance, scalability, and throughput of the system. •Is captured using class,
interaction and state transition diagrams with a focus on active classes and objects.
Process: a heavyweight flow of control that can execute independently and concurrently with

other processes.

Thread: a lightweight flow that can execute independently and concurrently with other threads

within the same process.


9.Results
After performing this practical successfully students would understand the design of architecture
view, process and thread.

10. Solved Tutorial Problems


1. What Is Uml Architecture?

1. Takes care structural and behavioral aspect of a software system.Includes software


usage, functionality, performance, reuse, economic and technology constraints.
2. Define Modeling In Uml And Its Advantages?

2. Modelling in UML:-

○ Model is a simplification of reality.


○ Blueprint of the actual system.
○ Specify the structural and behavior of the system.
○ Templates for designing the system.
○ Helps document the system.

3.What Are The Different Views In

Uml?

3.Differents views are:-

○ Use Case view - Presents the requirements of a system.


○ Design View - Capturing the vocabulary.
○ Process View - Modeling the systems processes and threads.
○ Implementation view - Addressing the physical implementation of the system.
○ Deployment view - Model the components required for deploying the

system. 4.What Is Modeling? What Are The Advantages Of Creating A Model?

4.Modeling is a proven and well-accepted engineering technique which helps build a model.
Model is a simplification of reality; it is a blueprint of the actual system that needs to be
built. Models help to visualize the system. Models help to specify the structural and behavior
of the system. Models help make templates for constructing the system. Models helps
document the system.
1.Explain About The Difficulties Of Interchange Format Of Uml?

1. XML standard should allow interchange of UML models but it is not the case scenario
practically. Portability of the language from one format to another format is not possible and
lack of information can be possible in the course. It also lacks sufficient details which make it
impossible for interchange between modeling tools.
2. State Some Benefits Of Iterative Development?

2. Some of the benefits offered by iterative development are as follows:

○ Mitigation of risks in an earlier stage.


○ Visibility of progress.
○ Feedback, adaptation and engagement.
○ Complexity management.
○ Iteration management can improve the overall process of the project because it
details and explains the various steps present in it.
3. Explain About Dependency?

3. This form of relationship exists when a change to a certain element changes the definition
and structure of the other element as well. This is indicated by a pointing arrow from the
dependent
side to the independent side. This form of relationship can exist between classes and
inheritance. 4.Write Down The Main Phases Of Problem Solving Model?

4. The main phases of problem solving model are given below:

• Data gathering.

• Problem redefining.

• Finding ideas.

• Finding solutions.

• Implementation.
Shivajirao Kadam Institute of Technology & Management, Indore
Department of Computer Science and Engineering
Experiment-wise Laboratory Performance Evaluation

Academic Session: July- December 2022 Semester & Batch: 7 Semester


Name of Lab: Software Architecture Course Code:CS-701
Name of Experiment: Consider a trip planning service (e.g., expedia) that is used CO No.
by travelers to identify and book all at once the best deal in terms of flight, hotel,
car rental etc. Model a basic scenario where a customer uses the system to book CO2
flight and hotel room by highlighting the concurrency and synchronization
involved.

Group*: <if any> Type**: Periods needed***:


Name of Student: *** Enrollment No.***

Date of Experiment Date of Submission

*** ***

Grade and remark by the tutor Score (0- 10) Remark / Reason
1. Clarity about the Objective and Outcome of
experiment
2. Submitted the work in desired format

3. Shown capability to solve the problems


Average (out of 10)

1. Title: Implementation View

2. Outcome: Logical view and dividing the logical entities into actual software components.

3. Objectives & Value Addition: To understand the concurrency & synchronization mechamism
4. References:

1. Bass, L., P. Clements, & R. Kazman, “Software Architecture in Practice”, 2


Ed, Prentice-Hall.
2.Jim Keogh, “J2EE – Complete Reference”, Tata McGraw Hill.
3.Dikel, David, D. Kane, and J. Wilson, “Software Architecture: Organizational
Principles and Practices”, Prentic -Hall.
5. Tutorial Problem:-
Executable Release (for a web-based application)
6. Experimental setup with list of equipment, components, and expectations
1.2 Hardware & Software Requirement
Minimum Hardware Requirement:
Processor : Pentium 4
RAM : 128MB
HDD Space: 40GB
Minimum Software Requirement:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA
7. Quiz & Viva Questions

Quiz

1.Which among these are the notations which are used to represent software architecture?

a) UML activity diagram

b) UML use case diagram

c) UML class diagram, Interaction diagram

d) All of the mentioned

2. Which of the following are true?

a) A unit’s responsibilities are usually indicated by various connections and by the


respective names

b) A unit’s relationships are usually indicated in part by its name and in part by the symbols
used to represent it in various diagrams

c) All of the mentioned

d) None of the mentioned

3. Why is Software architecture so important?

a) Communication among stakeholders

b) Early Design decisions


c) Transferable abstraction of a system

d) All of the mentioned

4. Which lines depict that architecture defines constraints on an implementation?

a) An implementation exhibits an architecture if it conforms to the structural decisions described


by the architecture

b) The implementation need not be divided into prescribed components

c) An implementation exhibits an architecture if it conforms to the structural


decisions described by the architecture and the implementation must be divided into
prescribed components

d) None of the mentioned

5. Which of the following is correct for decisions made at life cycle level?

a) Decisions at all level of like cycle from high level design to coding, implementation
affect system quality

b) Decisions at all level of like cycle from high level design to coding, implementation may or
may not affect system quality

c) Decisions at all level of like cycle from high level design to coding,implementation does not
affect system quality

d) None of the mentioned

Viva

1.What Are The Main Stages Required To Prepare A


Prototype? 2.What Are Object, Class And Instance?
3.What Is Generalization And Specialization?
4.What Is Functional Requirement?
5.What Is Non Functional Requirement?

To be Done by the Student

8.1 Hardware & Software

Used Hardware Used:


Processor: Intel Core i3
RAM: 4GB DDR-3
HDD Space: 200 GB
Software Used:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA

8.Theoretical solution of the instant problem


Describes the organization of static software modules (source code, data files, executables,

documentation etc.) in the development environment in terms of: •Packaging and layering

•Configuration management (ownership, release strategy etc.) Three kinds of components:

-Deployment components: components necessary and sufficient to form an executable system,

such as DLLs, executables etc. -Work product components: residue of development processes

such as source code files, data files etc. -Execution components: created as a consequence of an

executing system such as COM+ which is instantiated from a DLL.


9.Results
After performing this practical successfully students would understand the design of architecture
view and implementation view.

10. Solved Tutorial Problems


1. What Are The Main Stages Required To Prepare A Prototype?
1.The main stages required to prepare a prototype are as
follows:
• Perform initial analysis.
• Define prototype objectives.
• Specify prototype.
• Construct prototype.
• Evaluate prototype and recommend changes.

2. What Are Objects, Class And Instance?


2. Object: A single thing or concept, either in a model of an application domain or in a software
system that can be represented as an encapsulation of state, behavior and identity, a member of
a class that defines a set of similar objects.
Class: A class is a descriptor for a collection of objects that are logically similar in terms of
their behavior and the structure of their data.
Instance: A single object, usually called an instance in the context of its membership of a
particular class or type.

3. What Is Generalization And Specialization?


3. Generalization: Generalization is the abstraction of common features among elements by the
creation of a hierarchy of more general elements that encapsulate common features. For
example, in the animal world a cat and a dog share some common features and we create a
common general class “Mammal” which encapsulates their common feature. A cat, a dog – both
are consistent with mammal class.
Specialization: The other face of generalization is specialization. A class is said to be specialized
when it has a set of characteristics that uniquely distinguish it from its superclass. For example,
a cat is a mammal but it is more specialized

4. What Is Functional Requirement?


4. Functional requirements describe what a system does or is expected to do, often referred to as
its functionality.

5. What Is Non Functional Requirement?


5.Non-functionality requirements are those that describe aspects of the system that are
concerned with how well it provides the functional requirements.
Shivajirao Kadam Institute of Technology & Management, Indore
Department of Computer Science and Engineering
Experiment-wise Laboratory Performance Evaluation

Academic Session: July- December 2022 Semester & Batch: 7 Semester


Name of Lab: Software Architecture Course Code:CS-701
Name of Experiment: You are building a quote application, which contains a CO No.
class that is responsible for managing all of the quotes in the system. It is
important that all quotes interact with one and only one instance of this class. CO2
How do you structure your design so that only one instance of this class is
accessible within the application?

Group*: <if any> Type**: Periods needed***:


Name of Student: *** Enrollment No.***

Date of Experiment Date of Submission

*** ***

Grade and remark by the tutor Score (0- 10) Remark / Reason
1. Clarity about the Objective and Outcome of
experiment
2. Submitted the work in desired format

3. Shown capability to solve the problems


Average (out of 10)

1. Title: Pattern View

2. Outcome: To identify how to provide solutions to commonly recurring design issues.

3. Objectives & Value Addition: To understand the Design pattern


4. References:

1. Bass, L., P. Clements, & R. Kazman, “Software Architecture in Practice”, 2


Ed, Prentice-Hall.
2.Jim Keogh, “J2EE – Complete Reference”, Tata McGraw Hill.
3.Dikel, David, D. Kane, and J. Wilson, “Software Architecture: Organizational
Principles and Practices”, Prentic -Hall.
5. Tutorial Problem:-
Executable Release (for a web-based application)
6. Experimental setup with list of equipment, components, and expectations
1.2 Hardware & Software Requirement
Minimum Hardware Requirement:
Processor : Pentium 4
RAM : 128MB
HDD Space: 40GB
Minimum Software Requirement:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA
7. Quiz & Viva Questions

Quiz

1.Which of the following are software structures?

a) Module Structure

b) Conceptual or logical structure

c) Process structure

d) All of the mentioned

2. Which structure describes units as abstraction of system’s functional requirements?

a) Conceptual structure

b) Module structure

c) Physical structure

d) Calls structure

3. Which structure’s view shows the mapping of software onto hardware?

a) Module Structure

b) Process Structure

c) Physical Structure
d) Class Structure

4. Which structure describes units are programs or module?

a) Calls Structure

b) Uses Structure

c) Data Flow

d) Control Flow

Viva

1. What Are Objects, Class And Instance?


2. What Is Generalization And Specialization?
3.What Is Functional Requirement?
4.What Is Non Functional Requirement?

To be Done by the Student

8.1 Hardware & Software

Used Hardware Used:


Processor: Intel Core i3
RAM: 4GB DDR-3
HDD Space: 200 GB

Software Used:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA

8.Theoretical solution of the instant problem


Describes the organization of static software modules (source code, data files, executables,

documentation etc.) in the development environment in terms of: •Packaging and layering

•Configuration management (ownership, release strategy etc.) Three kinds of components:

-Deployment components: components necessary and sufficient to form an executable system,

such as DLLs, executables etc. -Work product components: residue of development processes

such as source code files, data files etc. -Execution components: created as a consequence of an

executing system such as COM+ which is instantiated from a DLL.


9.Results
After performing this practical successfully students would understand the design of architecture
view and implementation view.

10. Solved Tutorial Problems


1. What Are Objects, Class And Instance?
1. Object: A single thing or concept, either in a model of an application domain or in a software
system that can be represented as an encapsulation of state, behavior and identity, a member of
a class that defines a set of similar objects.
Class: A class is a descriptor for a collection of objects that are logically similar in terms of
their behavior and the structure of their data.
Instance: A single object, usually called an instance in the context of its membership of a
particular class or type.
2. What Is Generalization And Specialization?
2. Generalization: Generalization is the abstraction of common features among elements by the
creation of a hierarchy of more general elements that encapsulate common features. For
example, in the animal world a cat and a dog share some common features and we create a
common general class “Mammal” which encapsulates their common feature. A cat, a dog – both
are consistent with mammal class.
Specialization: The other face of generalization is specialization. A class is said to be specialized
when it has a set of characteristics that uniquely distinguish it from its superclass. For example,
a cat is a mammal but it is more specialized

3. What Is Functional Requirement?


3.Functional requirements describe what a system does or is expected to do, often referred to as
its functionality.
Shivajirao Kadam Institute of Technology & Management, Indore
Department of Computer Science and Engineering
Experiment-wise Laboratory Performance Evaluation

Academic Session: July- December 2022 Semester & Batch: 7 Semester


Name of Lab: Software Architecture Course Code:CS-701
Name of Experiment: An invoice processing system checks issued invoices CO No.
against payments received, and accordingly, issues either receipts or
payment reminders for customers CO3

Group*: <if any> Type**: Periods needed***:


Name of Student: *** Enrollment No.***

Date of Experiment Date of Submission

*** ***

Grade and remark by the tutor Score (0- 10) Remark / Reason
1. Clarity about the Objective and Outcome of
experiment
2. Submitted the work in desired format

3. Shown capability to solve the problems

Average (out of 10)

1. Title: Architecture Pattern

2. Outcome: To identify Pipes & Filters


3. Objectives & Value Addition: To understand the component and connector types involved in
the system
4. References:

1. Bass, L., P. Clements, & R. Kazman, “Software Architecture in Practice”, 2


Ed, Prentice-Hall.
2.Jim Keogh, “J2EE – Complete Reference”, Tata McGraw Hill.
3.Dikel, David, D. Kane, and J. Wilson, “Software Architecture: Organizational
Principles and Practices”, Prentic -Hall.
5. Tutorial Problem:-
Integrating Patterns in the Architecture of the WMS
6. Experimental setup with list of equipment, components, and expectations
1.2 Hardware & Software Requirement
Minimum Hardware Requirement:
Processor : Pentium 4
RAM : 128MB
HDD Space: 40GB
Minimum Software Requirement:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA
7. Quiz & Viva Questions

Quiz

1.What makes a good architecture?

a) The architecture may not be the product of a single architect or a small group

b) The architect should have the technical requirements for the system and an
articulated and prioritized list of qualitative properties

c) The architecture may not be well documented

d) All of the mentioned

2. Which among the following are valid questions raised for the top level architectural model?

a) What is the nature of components?

b) What is the significance of the links?

c) What is the significance of the layout?

d) All of the mentioned

3. What does “Every software system has an architecture” implies?

a) System itself is a component

b) Architecture an exist independently of its description or specification

c) All the system to be stable should posses an architecture

d) None of the mentioned


4. What is architectural style?

a) Architectural style is a description of component types

b) It is a pattern of run-time control

c) It is set of constraints on architecture

d) All of the mentioned

5. What is a Reference Model?

a) It is a division of functionality together with data flow between the pieces

b) It is a description of component types

c) It is standard decomposition of a known problem into parts that cooperatively solve a problem

d) It is a division of functionality together with data flow between the pieces, It is standard
decomposition of a known problem into parts that cooperatively solve a problem

Viva

1. What Is A Pattern?
2. What Is An Antipattern?
3. What Is Meant By A Component?
4.Define Interaction?

To be Done by the Student

8.1 Hardware & Software

Used Hardware Used:


Processor: Intel Core i3
RAM: 4GB DDR-3
HDD Space: 200 GB

Software Used:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA

8.Theoretical solution of the instant problem


Invoice processing by definition is a business process performed by the accounts payable
department which consists of a series of steps for managing vendor or supplier invoices from
receipt to payment, and recorded in the general ledger. Invoice processing is often performed
with software and it is commonly referred to as automated invoice processing or invoice
automation for short. An invoice processing flowchart is a structured guide detailing the steps for
how accounts payable is to process vendor invoices.

Here are the steps for invoice processing:

1. Capture, general ledger (GL) code, and match supporting documents such as a purchase
order and/or delivery receipt
2. Send invoices to authorized approvers to approve or reject invoices
3. Authorize and submit invoices for payment in a financial system

4. Process invoices for payment via common payment methods such as check, ACH, or
wire transfer
5. Archive invoices and payment information in the GL and for audit purposes

9.Results
After performing this practical successfully students would understand the design of architecture
pattern.
10.Solved Tutorial Problems

1. What Is A Pattern?
1.A pattern is an abstract solution to a commonly occurring problem in a given context. A
pattern describes a problem which occurs over and over again in our environment, and then
describes the core of a solution to that problem, in such a way that we can use this solution a
million times over, without ever doing it the same way twice.
2. What Is An Antipattern?
2. Documents unsuccessful attempts at providing solutions to certain recurring problems but
includes reworked solutions that are effective.
3. What Is Meant By A Component?
3. Component is an executable software module with a well-defined interface and
identity. 4.Define Interaction?
4. An Interaction is defined in the context of Collaboration. It specifies the communication
patterns between the roles in the Collaboration.
Shivajirao Kadam Institute of Technology & Management, Indore
Department of Computer Science and Engineering
Experiment-wise Laboratory Performance Evaluation

Academic Session: July- December 2022 Semester & Batch: 7 Semester


Name of Lab: Software Architecture Course Code:CS-701
Name of Experiment: The stock trading application must allow users to buy CO No.
and sell stocks, watch the activity of stocks. The user is presented with a list of
available stocks identified by their stock symbols. The user can select a stock CO3
and then press a View stock button. That results in a report about the stock: a
spreadsheet or a graph that shows the stock price over some interval. The report
is automatically updated as new stock data becomes available.

Group*: <if any> Type**: Periods needed***:


Name of Student: *** Enrollment No.***

Date of Experiment Date of Submission

*** ***

Grade and remark by the tutor Score (0- 10) Remark / Reason
1. Clarity about the Objective and Outcome of
experiment
2. Submitted the work in desired format

3. Shown capability to solve the problems

Average (out of 10)

1. Title: Model-View-Controller Pattern


2. Outcome: Provides a flexible structure for developing interactive applications
3. Objectives & Value Addition: To understand how to developing interactive applications.
4. References:

1. Bass, L., P. Clements, & R. Kazman, “Software Architecture in Practice”, 2


Ed, Prentice-Hall.
2.Jim Keogh, “J2EE – Complete Reference”, Tata McGraw Hill.
3.Dikel, David, D. Kane, and J. Wilson, “Software Architecture: Organizational
Principles and Practices”, Prentic -Hall.
5. Tutorial Problem:-
Component and Interprocess Communication Design for WMS
6. Experimental setup with list of equipment, components, and expectations
1.2 Hardware & Software Requirement
Minimum Hardware Requirement:
Processor : Pentium 4
RAM : 128MB
HDD Space: 40GB
Minimum Software Requirement:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA
7. Quiz & Viva Questions

Quiz

1. Which of the following examples is/are models of application architectures?

a) a means of assessing components for reuse

b) a design checklist

c) a vocabulary for talking about types of applications

d) all of the mentioned

2. ERP stands for

a) Enterprise Research Planning

b) Enterprise Resource Planning

c) Enterprise Resource Package

d) Enterprise Research Package

3. Which of the following type describes application architectures?

a) Transaction processing applications

b) Language processing systems

c) Client management systems

d) Transaction processing applications and Language processing systems


4. All the operations in a transaction need to be completed before the database changes are made

a) functional

b) available to the users

c) permanent

d) none of the mentioned

5.What makes a good architecture?

a) The architecture may not be the product of a single architect or a small group

b) The architect should have the technical requirements for the system and an
articulated and prioritized list of qualitative properties

c) The architecture may not be well documented

d) All of the mentioned

Viva

1.What Is Component Diagram And Deployment Diagram?


2.What Are Components Of An Mvc Architecture?
3. What Is Interface?
4. Define Model, View Controller?

To be Done by the Student

8.1 Hardware & Software

Used Hardware Used:


Processor: Intel Core i3
RAM: 4GB DDR-3
HDD Space: 200 GB

Software Used:
Turbo C++ IDE (TurboC3)
Borland Turbo C++ (Version
4.5) JAVA

8.Theoretical solution of the instant problem


A stock trading system is a complete set of rules that tell you exactly when to enter and exit the
market as well as how much of a stock to buy and where to get out if you are wrong......The

system provides trading signals based on the share price data and the rules you specify in the
system.

9.Results
After performing this practical successfully students would understand how to develop
interactive applications.

10.Solved Tutorial Problems

1.What Is Component Diagram And Deployment Diagram?


1. Component diagram: a diagram that shows the organization of and dependencies among
components. One of two UML implementation diagrams (q.v.).
Deployment diagram: A diagram that shows the run-time configuration of processing nodes
(q.v.) and the components, processes and objects that are located on them. One of two UML
implementation diagrams (q.v).

2. What Are Components Of An Mvc


Architecture? 2.The components of MVC
architecture are:
• Model
• View
• Controller
3. What Is Interface?
3. That part of the boundary between two interacting systems across which they communicate, the
set of all signatures for the public operations of a class or package.

4. Define Model, View Controller?


4.Model: provides the central functionality of the application and is aware of each of its
dependent view and controller components.
View: corresponds to a particular style and format of presentation of information to the
user.The view creates its associated controller.
Controller: accepts user input in the form of events that trigger the execution of operations
within the model.

You might also like