Академический Документы
Профессиональный Документы
Культура Документы
Architectural Design
- Introduction
- Data design
- Software architectural styles
• Software architectural design represents the structure of the data and program
components that are required to build a computer-based system
• A database designer creates the data architecture for a system to represent the
data components.
4
Emphasis on Software
Components
• A software architecture is not an operational s/w.
6
Architectural Descriptions
Architectural Decisions
One view of the architecture.
7
Example Software Architecture Diagrams
8
Architectural Genres
• For example, within the genre of buildings, you would encounter the
following general styles: houses, apartment buildings, office buildings, industrial
building, warehouses, and so on.
1. Artificial intelligence
2. Commercial and nonprofit
3. Communication
4. Content authoring
5. Devices
6. Financial
7. Games
8. Goverment
9
9. Industrial
10. Legal
11.Medical
12. Military
13. Medical
14.Os
15.Platforms
16. Scientific
17.Tools
18.Transportation.
19.Utilities
12
Common Architectural Styles
of American Homes
A-Frame Four square Ranch
14
(Source: Bass, Clements, and Kazman. Software Architecture in Practice. Addison-Wesley, 2003)
Pattern differs from architecture
1. The scope of a pattern is less broad, focusing on one aspect of
the architecture.
2. Pattern imposes a rule on architecture(eg: concurrency)
3. Pattern tend to address specific behavioral issues within the
context of architecture.(eg. How real-time application handle
synchronization or interrupt.)
• Data-centered architectures
• Data flow architectures
• Call and return architectures
• Object-oriented architectures
• Layered architectures
15
Data-Centered Architecture
16
Data Flow Architecture
17
Call and Return
Architecture
18
Layered Architecture
19
• Object-oriented architectures
20
Architectural Patterns
• Concurrency—applications must handle multiple tasks in a manner
that simulates parallelism
– operating system process management pattern
– task scheduler pattern
• Persistence—Data persists if it survives past the execution of the
process that created it. Two patterns are common:
– a database management system pattern that applies the storage
and retrieval capability of a DBMS to the application architecture
– an application level persistence pattern that builds persistence
features into the application architecture
• Distribution— the manner in which systems or components within
systems communicate with one another in a distributed environment
– A broker acts as a ‘middle-man’ between the client component
and a server component.
21