unit1-ppt-01-t1-ch1-abc
TRANSCRIPT
![Page 1: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/1.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 1/43
Architecture
Business Cycle
Shubha Raj K.B.
![Page 2: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/2.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 2/43
2
Outline
Introductions
Vasa
Architecture Business Cycle
Advice and Rules of Thumb for "Good"
Architecture
![Page 3: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/3.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 3/43
3
Preliminary Definition
The software architecture off a program or
computing system is the structure or
structures off the system,, which comprisesoftware elements,, the externally visible
properties off those elements,, and the
relationships among them..
![Page 4: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/4.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 4/43
4
History of the Vasa
January 1625: Initialcontract
Early 1626: Accelerated
schedule as buildingcommenced
Later 1626: Ship sizeincreased
1627: Shipwright died August 1628: Maiden
voyage
![Page 5: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/5.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 5/43
5
Schedule Pressure
Original project was to take 4 years
Shorter schedule demanded by King
Ship builders opted to extend small ship
rather than start over
![Page 6: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/6.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 6/43
6
Changing Requirements
King asked for larger size to
accommodate more guns
Eventually asked for 2 decks of guns
![Page 7: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/7.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 7/43
7
No Written Specifications
Original ship was familiar to ship builders
Scaling up was done without written
specifications
![Page 8: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/8.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 8/43
8
No Written Plan
3 "managers" worked without written plans
Shipwright died during project
400 people working in 5 different groups:
largest project in Sweden at this time
![Page 9: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/9.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 9/43
9
Missing Science
17th century ship builders could only
measure stability and heeling
characteristics by trial Center of gravity could not be predicted
accurately
![Page 10: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/10.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 10/43
10
Cross-Section of Vasa
![Page 11: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/11.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 11/43
11
Result:
![Page 12: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/12.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 12/43
12
The Role of Architecture
Traditionally,, Requirements beget design, which begets
system. Software Architecture,,encompasses the structures of large software
systems.
![Page 13: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/13.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 13/43
13
Architecture as a Tool
An important tool for:Communication
Reasoning
Analysis
Growth
And, ... Publication!
![Page 14: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/14.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 14/43
14
Where do Architectures come
from?
Stake holders:
• The customers
• The end users
• The developers
• Marketing people
• The developer’s organization
• The maintenance organization, …
•Architectures are influenced by system
stackholders
•Architectures are influenced by technical andorganizatinal factors
![Page 15: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/15.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 15/43
15
The stakeholder’s concerns:
Providing a certain behavior at runtime
Performing well on a particular piece of hardware
Being easy to customize Achieving a short time to market
Low cost of development
Gainfully employing programmers who have a
particular specialty
![Page 16: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/16.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 16/43
16
Architectures are influenced by technical and
organizational factors
Architecture is the summary result of a set of business and technical
decisions.
Architects design will vary depends on many factors Deadlines, real-time system, hardware, support software, human resource,
tools, etc …
Different stakeholders has different concerns and goals, some of them
may be contradictory
Structures and nature of the organization
In general, the influences are: customers and end users
Developing organization
Background and experience of the architect
Technical environment
![Page 17: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/17.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 17/43
17
Influences on Architecture
System
Architecture
Customer
And end user
Architect’s influence
Developing
organization
Technical Environment
Architect’s Experience
Architect(s)
Requirements (Qualities)
![Page 18: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/18.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 18/43
18
Influences on the Architecture
![Page 19: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/19.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 19/43
19
Stakeholders
Developing Organization
Management
Marketing
End User
Maintainenace
Organization
Customer
![Page 20: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/20.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 20/43
20
Developing Organization
Structure and Nature
Staffs Skill's
Schedule and Budget
Three Categories: Immediate Business
Long-term Business
Organizational Structure
![Page 21: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/21.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 21/43
21
Architect's Experience
Education and training
Exposure to successful architectural
patterns
Exposure to systems that have worked
particularly
Wish to experiment
![Page 22: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/22.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 22/43
22
Technical Environment
The environment that is current when anarchitecture is designed will influence that
architecture.. It is a brave architect who, in today's
environment, does not at least consider aWeb based, object-oriented, middleware-supported design for an informationsystem.
![Page 23: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/23.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 23/43
23
Requirements
Identify and actively engage the stakeholders
Architecture reviews Iterative prototyping
More than just technical skill's
DiplomacyNegotiationCommunication
![Page 24: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/24.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 24/43
24
Architecture Business Cycle
Stakeholders
Developing
Organization Technical
Environment
Architect's Experience
![Page 25: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/25.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 25/43
25
Effects on Dev. Org..
Teams are formed for individual software units
Schedules and budgets allocate resources in
chunks corresponding to the units Families off similar systems
Establish a foothold in a particular market area
![Page 26: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/26.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 26/43
26
Other Effects
The customer may be willing to relax
some requirements to gain economy
Architect's experience with subsequentsystems
Change the software engineering culture
![Page 27: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/27.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 27/43
27
Activities around Architecture
Creating business case
Understanding requirements
Creating or selecting architecture Documenting and communicating architecture
Analyzing architecture
Implementing system Ensuring conformance of implementation
![Page 28: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/28.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 28/43
28
Creating the business case for
the system It is the important step in creating and constraining
any future requirements
How much should the product cost?
What is its targeted market?What is its targeted time to market?
Will it need to interface with other systems?
Are there system limitations that it must work
within?
![Page 29: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/29.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 29/43
29
Understanding the requirements
Object oriented analysis
Safty-critical systems Creation of proto types
![Page 30: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/30.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 30/43
30
Creating or selecting the architecture
Any design process, there will be
multiple candidate design
Some will be rejected immediately Some will contend for primary
Choosing the right one is the architects
greatest challenges
![Page 31: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/31.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 31/43
31
Representing and communicating the
architecture
Communicate clearly, unambiguously to all stakeholders Developers must understand the work assignments Testers must understand the task structure Management must understand the scheduling implications
Representation medium should be: informative unambiguous readable by many people with varied background
Architecture must meet:behavioral, performance, quality requirement
Representation medium can serve as input to:
formal analysis techniques such as model building, simulation,verification, rapid prototyping
ADL - Architecture Description language
![Page 32: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/32.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 32/43
32
Analysis or evaluating the architecture
ADL provides analytical capabilities for runtime
properties of the system
Its performance
Its behavior
Its communication patterns, etc …
Non runtime quality attributes as:
Maintainability. ( portability, reusability, adaptability)
![Page 33: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/33.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 33/43
33
Implementing based on architecture and
ensuring conformance
Concerned with keeping the developers faithful
to the structures and interaction protocols
Requirements:Well communicated architecture
Environment or infrastructure to assists the
developers
Tools for architecture development
Constant vigilance for maintenance
![Page 34: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/34.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 34/43
34
What Makes a Good
architecture?
There is no absolute good or bad!
Architectures are either more or less fit for
some stated purpose.. Architectures can in fact be evaluated but
only in the context off specific goals
![Page 35: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/35.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 35/43
35
"Good" Architecture Rules of
Thumb (1/3)1. Use information hiding to hide computing
infrastructure
2. Each module should protect its secretswith a good interface
3. Use well-known architecture tactics to
achieve quality attributes
![Page 36: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/36.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 36/43
36
"Good" Architecture Rules of
Thumb (2/3)4. Minimize and isolate dependence on a
particular version of a commercial
product or tool.5. Separate producer modules from
consumer modules.
6. For parallel-processing, use well-definedprocesses or tasks.
![Page 37: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/37.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 37/43
37
"Good" Architecture Rules of
Thumb (3/3)7. Assignment of tasks or processes to
processors should be easily changeable
(even at runtime)8. Use a small number of simple interaction
patterns
![Page 38: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/38.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 38/43
38
Architecture Process Advice
(1/3)1. Architecture should be product of a single
architect of small group with identified leader
2. Architect should have functional requirementsand a prioritized list of quality attributes
3. Architecture should be well-documented with
at least one static and one dynamic view
![Page 39: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/39.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 39/43
39
Architecture Process Advice
(2/3)4. Architecture should be circulated to
stakeholders, who are active in review
5. Architecture should be analyzed(quantitatively and quality) before it is too
late.
![Page 40: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/40.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 40/43
40
Architecture Process Advice
(3/3)6. System should be developed
incrementally from an initial skeleton that
includes major communication paths7. Architecture should result in a small
number of specific resource contention
areas
![Page 41: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/41.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 41/43
41
Structural Guidelines (1/2)
Information-hiding modules
Well-defined interfaces
Quality attributes Independent off a particular version off a
commercial product or tool
Modules that produce data should be separatefrom modules that consume data..
![Page 42: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/42.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 42/43
42
Structural Guidelines (2/2)
A smallll number off simple interaction
patterns
For parallel processing systems:Well-defined processes or tasks
Assignment to specific processors should be
changed
![Page 43: Unit1-ppt-01-T1-Ch1-ABC](https://reader030.vdocuments.us/reader030/viewer/2022021119/577d23921a28ab4e1e9a2c88/html5/thumbnails/43.jpg)
8/3/2019 Unit1-ppt-01-T1-Ch1-ABC
http://slidepdf.com/reader/full/unit1-ppt-01-t1-ch1-abc 43/43