Upload
mvinukonda
View
221
Download
0
Embed Size (px)
Citation preview
8/6/2019 01 Architecture Workshop Introduction
1/15
IntroductionArchitecture Workshop
8/6/2019 01 Architecture Workshop Introduction
2/15
Agenda
8/6/2019 01 Architecture Workshop Introduction
3/15
oftware Architectureefinition 1
The software architecture of a programor computing system is the structure
,or structures of the system which
,comprise software elements theexternally visible properties of
,those elements and the relationships.among them
- (Software Architecture in Practice 2nd) . , . ,edition by L Bass P Clements and
.R Kazman
8/6/2019 01 Architecture Workshop Introduction
4/15
Software Architecture Definition 2
Architecture is defined by therecommended practice as the
fundamental organization of asystem, embodied in its components,their relationships to each other andthe environment, and the principles
governing its design and evolution.- ANSI/IEEE Std 1471-2000,
Recommended Practice for
Architectural Description of Software-
8/6/2019 01 Architecture Workshop Introduction
5/15
oftware Architectureefinition 3
[ ]Software architecture goes beyond thealgorithms and data structures of the;computation designing and specifying the
overall system structure emerges as a new.kind of problem Structural issues include
gross organization and global control; ,structure protocols for communication
, ;synchronization and data access assignment;of functionality to design elements physical
; ;distribution composition of design elements;scaling and performance and selection among.design alternatives
- . , . ,D Garlan M Shaw An Introduction to SoftwareArchitecture
8/6/2019 01 Architecture Workshop Introduction
6/15
Architecture
Is an Abstraction Defines Structure Defines Behavior Focuses on Significant Elements Balances Stakeholder Needs Embodies Decisions based on Rationale Specifies Component Communication Addresses Non-functional Requirements
Business constraints Technical constraints Quality attributes
Influences team structure
8/6/2019 01 Architecture Workshop Introduction
7/15
.rchitecture vs Design :Architecture is used to
Make buy decisions Discriminate between options Discover the true requirements
Drive one or more systems to a common use orpurpose /Provides guidelines blue print and a set of
best practices for design
:Design is used to Develop system components Build the system Understand configuration changes as the
system is modified
8/6/2019 01 Architecture Workshop Introduction
8/15
ypes of Architecturesbstraction Granularity ey Design Concerns
Enterprise Architecture Business Process and ModelsBusiness Data
Organizational Structure and RelationshipsEnterprise Stakeholders
IT Infrastructure
System Architecture
Identification of system context
( / )Partitioning hardware software focus/Identification of S W requirements
Overall systemic Functional requirementsSystemic Integration and Testing
Software Architecture (Identification of Crosscutting Design Concerns quality)attributes
Software Functional RequirementsPartitioning of Software Applications
Software and Systemic Integration and Testing
Detailed Software DesignLanguage Features
Algorithmic EfficienciesData Structure Design
Software Application TestingImplementation of Functionality
8/6/2019 01 Architecture Workshop Introduction
9/15
Types of Architects
Technical Architect Specialist in a particular technology Understands the strengths and limitations of a
technology
Determines the applicability of the technology anddefines the architecture using that particulartechnology
Guides the team to implement the solution Knows various vendor tools in the technology area the
latest trends in the market, and various
architectural alternatives for implementing thesolution
Other Flavors : .NET architect, J2EE architect,integration architect, BPM architect,
Solution Architect
8/6/2019 01 Architecture Workshop Introduction
10/15
rchitect s Focus
Enterprise
Architect
Enterprise
Architect
SolutionArchitect
SolutionArchitect
Application or SoftwareArchitect
Application or SoftwareArchitect
Development LeadDevelopment TeamDevelopment LeadDevelopment Team
Specialized
Architects
,
,
.
Data
SecurityNetwork
Level of Detail
Scope
an
d
Res
pons
ibi
li
ty
Strategic Hands on Coder
8/6/2019 01 Architecture Workshop Introduction
11/15
rchitect s Play a Majorole in
.1 Analysis of the problem domain
.2 Risk management
.3 Requirements management
.4 Estimation
.5 Technology roadmap management
.6 Determination of implementation approaches.7 Assessment of technical feasibility through POCs
.8 Definition of an architecture that meets the system( ),requirements functional and quality attributes
,goals of the organization budget and schedule.9 Interface design.10 Oversight of the mapping from the architecture to the
design and implementation.11 Communication of the software architecture totechnical and -o n t ec hni ca l a ud ie nc es.12 Maintenance of the software architecture throughout
the project lifecycle.13.14
8/6/2019 01 Architecture Workshop Introduction
12/15
Competencies
Strategy
Communication
Technical Acumen
Domain Knowledge Project Mgmt
Leadership Relationship Mgmt Experience
Mindset
Skills
Foundation
8/6/2019 01 Architecture Workshop Introduction
13/15
SDLC Processes &Architecture
Waterfall Iterative
8/6/2019 01 Architecture Workshop Introduction
14/15
Architects Involvementacross Phases (Ideal)
8/6/2019 01 Architecture Workshop Introduction
15/15
ou will learn about General approach to designing application
architectures Different types of applications that you
can build Key factors you must consider whendesigning application architectures
Layered approach to application design Quality attributes that affect the overall
success and acceptance of an application