SlideShare a Scribd company logo
1 of 16
Tech Talk – Enterprise Architect
[Fundamentals of Architecture - 3]
Roadmap







Architecture vs Design
Architectural Patterns
Architectural Workflow
Diagrams of the key architecture views
Architecture types
Common Enterprise Architecture
Frameworks
Common Questions











What, if anything, makes architecture different from
design?
Does object oriented analysis and design have anything to
do with architecture?
What goes on in the environment in which architecture is
created and turned into a product? Why does the architect
care?
What documents does architect produce, and what’s the
purpose of those documents?
Is it important for the architect to be technology expert?
What are patterns, and why they are relevant?
What is important?


Architecture or Design?
Difference is !!!
Architect
Abstract
Deliverables

Area of Focus

Design

High / broad focus on
few details
System and sub
system plans,
architecture prototypes
Non-functional
requirements, and risk
management

Low / specific focus on
many details
Component design,
code specification
Functional
requirements
Common Principals


Common characteristics of architecture
and design







Abstraction
Encapsulation
Cohesion
Coupling

Its same as of design and implementation,
where refactor is required to incorporate
changes
Architectural Principals









Separation of Concerns
Dependency Inversion Principal
Separate Unstable from Stable
components
Use component and container frameworks
Keep component interfaces simple and
clear
Keep remote component interface coarsegrained
Architecture Patterns and
Design Patterns







Standard solution to recurring problem
To identify problems, and trade-offs with
respect to service level requirements
Split problem, one pattern is not a
solution to all
Synthesize system by combining all
patterns into aggregate construct
Architectural Patterns




The layers pattern
Model View Controller (MVC)
The tiers Pattern
The Layers Pattern


Decompose into sub-tasks and each
represents a particular level of
abstraction.
MVC Pattern


Separate concerns in data presentation,
processing, and storage. A good
example for separation of concern
The Tiers Pattern
Model 1 Architecture
Model 2 - Architecture
PAC Architecture


Presentation Abstraction Control
Pattern
Q&A

More Related Content

What's hot

Beyond a Product View of Architecture
Beyond a Product View of ArchitectureBeyond a Product View of Architecture
Beyond a Product View of ArchitectureNathaniel Palmer
 
A software design creates meaningful engineering representation
A software design creates meaningful engineering representationA software design creates meaningful engineering representation
A software design creates meaningful engineering representationRamandeep Singh
 
My Skills in the fiels of EI&C
My Skills in the fiels of EI&CMy Skills in the fiels of EI&C
My Skills in the fiels of EI&CWally Kabbara
 
Architecture business cycle
Architecture business cycleArchitecture business cycle
Architecture business cycleHimanshu
 
Analisis desain sistem informasi ppt.2
Analisis desain sistem informasi ppt.2Analisis desain sistem informasi ppt.2
Analisis desain sistem informasi ppt.2Imhaa Blue
 
solution architect
solution architectsolution architect
solution architectOleg Miroff
 
Software Architecture Practices
Software Architecture PracticesSoftware Architecture Practices
Software Architecture PracticesSantosh Botre
 
Reconstructing Software Architecture
Reconstructing Software ArchitectureReconstructing Software Architecture
Reconstructing Software ArchitectureHimanshu
 
Abc cycle in sw architecture ashish
Abc cycle  in sw architecture ashishAbc cycle  in sw architecture ashish
Abc cycle in sw architecture ashishAshish Agrawal
 
Software System Engineering - Chapter 3
Software System Engineering - Chapter 3Software System Engineering - Chapter 3
Software System Engineering - Chapter 3Fadhil Ismail
 
Ramkumar Kashyap
Ramkumar KashyapRamkumar Kashyap
Ramkumar Kashyaprkashyap
 

What's hot (12)

Beyond a Product View of Architecture
Beyond a Product View of ArchitectureBeyond a Product View of Architecture
Beyond a Product View of Architecture
 
A software design creates meaningful engineering representation
A software design creates meaningful engineering representationA software design creates meaningful engineering representation
A software design creates meaningful engineering representation
 
My Skills in the fiels of EI&C
My Skills in the fiels of EI&CMy Skills in the fiels of EI&C
My Skills in the fiels of EI&C
 
Architecture business cycle
Architecture business cycleArchitecture business cycle
Architecture business cycle
 
Analisis desain sistem informasi ppt.2
Analisis desain sistem informasi ppt.2Analisis desain sistem informasi ppt.2
Analisis desain sistem informasi ppt.2
 
Power point for project
Power point for projectPower point for project
Power point for project
 
solution architect
solution architectsolution architect
solution architect
 
Software Architecture Practices
Software Architecture PracticesSoftware Architecture Practices
Software Architecture Practices
 
Reconstructing Software Architecture
Reconstructing Software ArchitectureReconstructing Software Architecture
Reconstructing Software Architecture
 
Abc cycle in sw architecture ashish
Abc cycle  in sw architecture ashishAbc cycle  in sw architecture ashish
Abc cycle in sw architecture ashish
 
Software System Engineering - Chapter 3
Software System Engineering - Chapter 3Software System Engineering - Chapter 3
Software System Engineering - Chapter 3
 
Ramkumar Kashyap
Ramkumar KashyapRamkumar Kashyap
Ramkumar Kashyap
 

Similar to Tech Talk - Enterprise Architect - 02

O.Savchenko FWDays workshop Software Architecture
O.Savchenko FWDays workshop Software ArchitectureO.Savchenko FWDays workshop Software Architecture
O.Savchenko FWDays workshop Software ArchitectureAlexandr Savchenko
 
02 architectures in_context
02 architectures in_context02 architectures in_context
02 architectures in_contextMajong DevJfu
 
Technical Architecture
Technical ArchitectureTechnical Architecture
Technical Architecturescmiyer
 
Software Architecture
Software ArchitectureSoftware Architecture
Software ArchitectureVikas Dhyani
 
Cs 1023 lec 3 architecture (week 1)
Cs 1023 lec 3 architecture (week 1)Cs 1023 lec 3 architecture (week 1)
Cs 1023 lec 3 architecture (week 1)stanbridge
 
Cs 1023 lec 3 architecture (week 1)
Cs 1023 lec 3 architecture (week 1)Cs 1023 lec 3 architecture (week 1)
Cs 1023 lec 3 architecture (week 1)stanbridge
 
An introduction to fundamental architecture concepts
An introduction to fundamental architecture conceptsAn introduction to fundamental architecture concepts
An introduction to fundamental architecture conceptswweinmeyer79
 
Business Analysts V Architects
Business Analysts V ArchitectsBusiness Analysts V Architects
Business Analysts V ArchitectsKevin Francis
 
Togaf online training
Togaf online trainingTogaf online training
Togaf online trainingxoomlakshmi
 
Online Togaf 9.1 Training in USA
Online Togaf 9.1 Training in USAOnline Togaf 9.1 Training in USA
Online Togaf 9.1 Training in USAXoom Trainings
 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notesSudarshan Dhondaley
 
An Introduction To Fundamental Architecture Concepts
An Introduction To Fundamental Architecture ConceptsAn Introduction To Fundamental Architecture Concepts
An Introduction To Fundamental Architecture ConceptsHannah Baker
 
Lectures 11-17.pptx
Lectures 11-17.pptxLectures 11-17.pptx
Lectures 11-17.pptxVScGii
 
Software Architecture Course - Part III Taxonomies - Definitions
Software Architecture Course - Part III Taxonomies - DefinitionsSoftware Architecture Course - Part III Taxonomies - Definitions
Software Architecture Course - Part III Taxonomies - DefinitionsJose Emilio Labra Gayo
 
02_Architectures_In_Context.ppt
02_Architectures_In_Context.ppt02_Architectures_In_Context.ppt
02_Architectures_In_Context.pptRohanBorgalli
 
SDA 01.pptx
SDA 01.pptxSDA 01.pptx
SDA 01.pptxJuttG6
 

Similar to Tech Talk - Enterprise Architect - 02 (20)

O.Savchenko FWDays workshop Software Architecture
O.Savchenko FWDays workshop Software ArchitectureO.Savchenko FWDays workshop Software Architecture
O.Savchenko FWDays workshop Software Architecture
 
02 architectures in_context
02 architectures in_context02 architectures in_context
02 architectures in_context
 
Technical Architecture
Technical ArchitectureTechnical Architecture
Technical Architecture
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Cs 1023 lec 3 architecture (week 1)
Cs 1023 lec 3 architecture (week 1)Cs 1023 lec 3 architecture (week 1)
Cs 1023 lec 3 architecture (week 1)
 
Cs 1023 lec 3 architecture (week 1)
Cs 1023 lec 3 architecture (week 1)Cs 1023 lec 3 architecture (week 1)
Cs 1023 lec 3 architecture (week 1)
 
3 analysis and design overview
3 analysis and design overview3 analysis and design overview
3 analysis and design overview
 
An introduction to fundamental architecture concepts
An introduction to fundamental architecture conceptsAn introduction to fundamental architecture concepts
An introduction to fundamental architecture concepts
 
Business Analysts V Architects
Business Analysts V ArchitectsBusiness Analysts V Architects
Business Analysts V Architects
 
Togaf online training
Togaf online trainingTogaf online training
Togaf online training
 
Online Togaf 9.1 Training in USA
Online Togaf 9.1 Training in USAOnline Togaf 9.1 Training in USA
Online Togaf 9.1 Training in USA
 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notes
 
An Introduction To Fundamental Architecture Concepts
An Introduction To Fundamental Architecture ConceptsAn Introduction To Fundamental Architecture Concepts
An Introduction To Fundamental Architecture Concepts
 
Chapter1
Chapter1Chapter1
Chapter1
 
Bring your own architecture
Bring your own architectureBring your own architecture
Bring your own architecture
 
Lectures 11-17.pptx
Lectures 11-17.pptxLectures 11-17.pptx
Lectures 11-17.pptx
 
The Role of the Architect
The Role of the ArchitectThe Role of the Architect
The Role of the Architect
 
Software Architecture Course - Part III Taxonomies - Definitions
Software Architecture Course - Part III Taxonomies - DefinitionsSoftware Architecture Course - Part III Taxonomies - Definitions
Software Architecture Course - Part III Taxonomies - Definitions
 
02_Architectures_In_Context.ppt
02_Architectures_In_Context.ppt02_Architectures_In_Context.ppt
02_Architectures_In_Context.ppt
 
SDA 01.pptx
SDA 01.pptxSDA 01.pptx
SDA 01.pptx
 

Recently uploaded

Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Dipal Arora
 
Famous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st CenturyFamous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st Centuryrwgiffor
 
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableDipal Arora
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxAndy Lambert
 
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...lizamodels9
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Serviceritikaroy0888
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMANIlamathiKannappan
 
The Path to Product Excellence: Avoiding Common Pitfalls and Enhancing Commun...
The Path to Product Excellence: Avoiding Common Pitfalls and Enhancing Commun...The Path to Product Excellence: Avoiding Common Pitfalls and Enhancing Commun...
The Path to Product Excellence: Avoiding Common Pitfalls and Enhancing Commun...Aggregage
 
Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...Roland Driesen
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdfRenandantas16
 
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...lizamodels9
 
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfDr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfAdmir Softic
 
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779Delhi Call girls
 
Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...Roland Driesen
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756dollysharma2066
 
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangaloreamitlee9823
 
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...Lviv Startup Club
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyEthan lee
 
Grateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfGrateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfPaul Menig
 

Recently uploaded (20)

Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
 
Famous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st CenturyFamous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st Century
 
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptx
 
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Service
 
Forklift Operations: Safety through Cartoons
Forklift Operations: Safety through CartoonsForklift Operations: Safety through Cartoons
Forklift Operations: Safety through Cartoons
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMAN
 
The Path to Product Excellence: Avoiding Common Pitfalls and Enhancing Commun...
The Path to Product Excellence: Avoiding Common Pitfalls and Enhancing Commun...The Path to Product Excellence: Avoiding Common Pitfalls and Enhancing Commun...
The Path to Product Excellence: Avoiding Common Pitfalls and Enhancing Commun...
 
Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...Boost the utilization of your HCL environment by reevaluating use cases and f...
Boost the utilization of your HCL environment by reevaluating use cases and f...
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
 
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
 
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfDr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
 
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
 
Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
 
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
 
Grateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfGrateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdf
 

Tech Talk - Enterprise Architect - 02

Editor's Notes

  1. We typically have this question, which is more important, architecture or design? Can a good architecture make up for a bad design or can a good design overcome a bad architecture? We have typically the question "Did you say the system's architecture was nice and clean? Yes, you just cannot see it because it is hidden behind the codes. Here, we are looking at how architecture looks at the high level and design looks at a low level.
  2. Did not you say this system's Architecture was nice and clean. Yes You just cannot see it because it is hidden behind the code.
  3. Here, we see the difference between architecture and design. So, looking at the architecture, at the abstraction level, typically an architect focuses on the high/broad focus only few details. On the other hand, a designer focuses on the low/specific details of your components. In terms of deliverables, the architect typically has system and subsystem plans architecture prototype that is the delivery before an architect. For a designer, it is a component design and code specification. In terms of the area of focus, the architect focuses more on the nonfunctional requirements, which are the quality of services and risk management. On the other hand, the designer focuses more on the functional requirements, the detailed code of your different components.
  4. Looking at common principles between architecture and design. When we develop the architecture of a system, we focus on planning sub-systems. Therefore, the basis for the architecture is components rather than individual objects. However, these components are essentially high-level object and the principles of good object-oriented design also apply at the architecture level. So, the common characteristics of architecture and design are abstraction, encapsulation, cohesion, and coupling. <br>Abstraction it focuses more on the architecture significant with details of a component. Encapsulation supports abstraction by hiding the details that were ignored at the time the abstraction was defined. Cohesion supports abstraction and encapsulation by ensuring that all of the details hidden by the encapsulation boundary contribute to the definition of the abstraction. Coupling measures the connectedness of components. Inside an encapsulation boundary, coupling can be helpful because it adds to the cohesion of the abstraction. Like design and implementation, the architecture also requires refactoring to incorporate changes.
  5. Let us look now at the architectural principles. Architectural principles are axioms or assumptions that suggest good practices when constructing system architecture. So, we need to focus on the separation of concerns- the principle tells the architect to separate components into different functional or infrastructure purposes. Dependency inversion - depend upon abstractions and do not depend upon concretions. Separate volatile from stable components - as a system changes, you want to reduce the changes to a small number of packages. The use of component and container frameworks - a component is a software component that is managed by a container, for example Servlet, which is managed by the Web container. Keep component interfaces simple and clear - the more complex the component interface is the harder it is for the software developers to understand how to use the component. And keep remote component interfaces coarse-grained so when you are communicating through the network, use the coarse-grained calls rather than fine-grained calls. Architecture principles are axioms or assumptions that suggest good practices when constructing a system architecture Separation of Concerns Dependency Inversion Principle Separate volatile from stable components Use component and container frameworks Keep component interfaces simple and clear Keep remote component interfaces coarse grained
  6. Let us look now at introduction to architecture patterns. Patterns are standard solutions to commonly recurring problems in a particular context. By using a pattern-based reasoning process to plan systems, the architect can analyze systems to identify problems and of course trade-offs with respect to service-level requirements. And every one of these problems might be solved by applying a particular pattern or it might require further analysis and decomposition. So, the architect can then synthesize the system by combining the pattern solutions into aggregate constructs. The idea here is making use of these solutions of common recurring problems that happened again and again.
  7. Looking at the Layers pattern. The Layers pattern structures applications so that they can be decomposed into groups of subtasks and every group represents a particular level of abstraction. So, we can look at it as the low level, which is the hardware level or the hardware platform. Then, we get into the lower platform, which is the OS with installed JVM on it. Then, the upper platform represented by the application server and then the next level would the virtual platform representing the specifications and APIs and frameworks that the application server uses based on the specification. For example, if it is Java A6, then it would be all the APIs inspects related to the Java EE 6 the current Java EE specification, which is the Java EE6. And the application level and that is the in-house application that you typically implement. The Layers pattern structures applications so they can be decomposed into groups of subtasks, and each group represents a particular level of abstraction. A graphic depicting the Layers pattern is displayed.
  8. Looking at the MVC pattern. The MVC pattern enhances the flexibility and maintainability of application by separating the application into three distinct modules. First is the model and that represents the data model. The view are the components for viewing the representation of the data model. Controller are the components for allowing interaction. <br>We can use the MVC pattern to design a data model with clearly specified interfaces that allow the model to be manipulated and queried. You can use the MVC pattern to ensure proper decoupling among components within a particular tier, which helps with the separation of concerns in developing application components.
  9. Looking at the Tiers pattern. The Tiers pattern is made of the client tier and then after that we have the Web tier, which typically handles the presentation application and usually the view components can be used to handle that. We can make use of servlets, JSPs, JSF components, and helpers. <br>The business tier handles the business logic that is where you have your Enterprise Java Bean, like session bean, stateless, stateful or singleton session beans. Also, they can handle the messaging system, can consume messages asynchronously through a message through a bean. You also can handle Web services that interacting with Web service client through either SOAP, JAX-WS Web service or REST, which is JAX-RX Web service. <br>And then you have the integration tier that contains all the components that allow you to integrate to external systems. For example, domain stores, like hibernate or top link accessing the database, JDBC, JMS, JPA, connectors, and so forth to access outside system, external systems, which are the resources tier, which could be database or an EIS system like an Enterprise Information System.
  10. Let us look now at architecture model. Let us look at Model 1 architecture. In the Model 1 architecture, the JSP page alone is responsible for processing the incoming request and relying back to the client. There is still separation of presentation from content because all data access is performed using beans. Obviously, at the JSP access the beans, which access in this case the business tier and/or those Java beans would be representing a business tier or business processes and JSPs can actually contain some code or embed some Java in it to access your business components or your data component. This is typically used for simple small applications. <br>Model 1 suffers from the hard-coded navigation and of the responsibility of the controller model and view. This is not normally used any longer in favor of Model 2 architecture.
  11. In the architecture Model 2, we have servlets, JSF components, and helpers. This is typically used for highly dynamic enterprise applications or particularly presentation tier enterprise applications. <br>So, the Model 2 architecture is actually the way to go and it is a hybrid approach for serving dynamic content. Since it combines the use of both servlets and JSPs, where the servlet act as the controller and it is the in charge of the request processing and the creation of any beans or object by the JSP as well as deciding depending on the user's actions. The JSP is responsible for building the view so that will go back to the client or the browser. The clients do show all the information that the client needs.
  12. Now looking the PAC architecture pattern. Sometimes we use this Presentation Abstraction Control (PAC) pattern. It actually introduce a level of decoupling between the tiers to further define the separation of concerns that was initiated with the MVC pattern. So here we have the abstraction, which is representing data and represents the presentation or the view and control represents all the services or all the controllers that are part of the architecture. <br>So, it separates in a sense that it treats the presentation tier as one level and then the controller would be moved to the business tier and the abstraction represents the data model.