SlideShare una empresa de Scribd logo
1 de 15
Descargar para leer sin conexión
An Introduction to
Software Architecture
Rahim lotfi
Mr_lotfi@ymail.com
university of Isfahan
university of Isfahan
2
Agenda
 What’s Software Architecture?
 Architectural Design Process?
 Why Software Architecture?
 Architecture types ? Levels ???
university of Isfahan
3
What’s Software Architecture?
• Architectural Design
– process for identifying the subsystems that make up a
system
– defines framework for sub-system control and
communication
– Behavior as specified in collaborations among those
elements
university of Isfahan
4
Architectural Design Process?
• System structuring
– system decomposed into several subsystems
– subsystem communication is established
• Control modeling
– model of control relationships among system components is
established
• Modular decomposition
– identified subsystems decomposed into modules
university of Isfahan
5
Why Software Architecture?
university of Isfahan
6
Why Software Architecture?
• Scale
• Process
• Cost
• Schedule
• Skills and development teams
• Materials and technologies
• Stakeholders
• Risks
university of Isfahan
7
Architecture types
Client/Server Architectures
client
send-request
server
receive-request
-Client-server architecture (client/server) is a network architecture in which each
computer or process on the network is either a client or a server
-Client computers provide an interface to allow a computer user to request
services of the server and to display the results the server returns
university of Isfahan
8
Architecture types
• Components of Client/Server Architectures
System simple_cs = {
Component client = {Port send-request}
Component server = {Port receive-request}
Connector rpc = {Roles {caller, callee}}
Attachments : {client.send-request to rpc.caller;
server.receive-request to rpc.callee}
}
university of Isfahan
9
Architecture types
• three-layer Architecture
• Layer indicates logical separation of components, such as having distinct namespaces and
classes for the Database Access Layer, Business Logic Layer and User Interface Layer.
university of Isfahan
10
Architecture types
• peer to peer Architecture
university of Isfahan
11
Architecture types
• MVC Architecture
university of Isfahan
12
Architecture types
• pipe and filters Architecture
Pipe and Filters is architectural pattern in which an event triggers a series of processing steps
on a component, transforming it uniquely on each step. Each step is a called a filter
component and the entire sequence of called the pipeline
university of Isfahan
13
Architecture types
• publish-subscribe Architecture
• In software architecture, publish–subscribe is a messaging pattern where senders
of messages, called publishers, do not program the messages to be sent directly to
specific receivers, called subscribers.
university of Isfahan
14
Question
university of Isfahan
15
thank for your attention

Más contenido relacionado

La actualidad más candente

Pressman ch-11-component-level-design
Pressman ch-11-component-level-designPressman ch-11-component-level-design
Pressman ch-11-component-level-design
Oliver Cheng
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
Hayim Makabee
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
Slideshare
 

La actualidad más candente (20)

Unified process Model
Unified process ModelUnified process Model
Unified process Model
 
Ian Sommerville, Software Engineering, 9th Edition Ch1
Ian Sommerville,  Software Engineering, 9th Edition Ch1Ian Sommerville,  Software Engineering, 9th Edition Ch1
Ian Sommerville, Software Engineering, 9th Edition Ch1
 
Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...
 
Software Estimation Techniques
Software Estimation TechniquesSoftware Estimation Techniques
Software Estimation Techniques
 
4+1 view model
4+1 view model4+1 view model
4+1 view model
 
Introduction to Software Project Management
Introduction to Software Project ManagementIntroduction to Software Project Management
Introduction to Software Project Management
 
Chapter 01 software engineering pressman
Chapter 01  software engineering pressmanChapter 01  software engineering pressman
Chapter 01 software engineering pressman
 
Software Architecture and Design Introduction
Software Architecture and Design IntroductionSoftware Architecture and Design Introduction
Software Architecture and Design Introduction
 
UML
UMLUML
UML
 
Pressman ch-11-component-level-design
Pressman ch-11-component-level-designPressman ch-11-component-level-design
Pressman ch-11-component-level-design
 
Non Functional Requirement.
Non Functional Requirement.Non Functional Requirement.
Non Functional Requirement.
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
 
software architecture
software architecturesoftware architecture
software architecture
 
Agile Software Development Life Cycle
Agile Software Development Life CycleAgile Software Development Life Cycle
Agile Software Development Life Cycle
 
Software Architecture Patterns
Software Architecture PatternsSoftware Architecture Patterns
Software Architecture Patterns
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
Documenting Software Architectures
Documenting Software ArchitecturesDocumenting Software Architectures
Documenting Software Architectures
 
Rational Unified Process
Rational Unified ProcessRational Unified Process
Rational Unified Process
 
Unified process model
Unified process modelUnified process model
Unified process model
 
Software Architecture: Design Decisions
Software Architecture: Design DecisionsSoftware Architecture: Design Decisions
Software Architecture: Design Decisions
 

Similar a An Introduction to Software Architecture

Enterprise Software Architecture
Enterprise Software ArchitectureEnterprise Software Architecture
Enterprise Software Architecture
rahmed_sct
 
Architecture Proposition For Multimedia repository
Architecture Proposition For Multimedia repositoryArchitecture Proposition For Multimedia repository
Architecture Proposition For Multimedia repository
McRaken
 

Similar a An Introduction to Software Architecture (20)

college website project report
college website project reportcollege website project report
college website project report
 
Diksha sda presentation
Diksha sda presentationDiksha sda presentation
Diksha sda presentation
 
network design 6.pptx
network design 6.pptxnetwork design 6.pptx
network design 6.pptx
 
Soa 1 7.ppsx
Soa 1 7.ppsxSoa 1 7.ppsx
Soa 1 7.ppsx
 
Software Architecture Taxonomies - Behaviour: Components & Connectors
Software Architecture Taxonomies - Behaviour: Components & ConnectorsSoftware Architecture Taxonomies - Behaviour: Components & Connectors
Software Architecture Taxonomies - Behaviour: Components & Connectors
 
architectural design
 architectural design architectural design
architectural design
 
DITEC - Software Engineering
DITEC - Software EngineeringDITEC - Software Engineering
DITEC - Software Engineering
 
Enterprise Software Architecture
Enterprise Software ArchitectureEnterprise Software Architecture
Enterprise Software Architecture
 
Ch10
Ch10Ch10
Ch10
 
Ch10
Ch10Ch10
Ch10
 
Se ii unit3-architectural-design
Se ii unit3-architectural-designSe ii unit3-architectural-design
Se ii unit3-architectural-design
 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptx
 
Architectural design of software
Architectural  design of softwareArchitectural  design of software
Architectural design of software
 
System models in distributed system
System models in distributed systemSystem models in distributed system
System models in distributed system
 
Software artitchteure
Software artitchteureSoftware artitchteure
Software artitchteure
 
Aneka platform
Aneka platformAneka platform
Aneka platform
 
Architectural Design & Patterns
Architectural Design&PatternsArchitectural Design&Patterns
Architectural Design & Patterns
 
REST != WebAPI
REST != WebAPIREST != WebAPI
REST != WebAPI
 
Practical Considerations for Deploying a Java Active Networking Platform
Practical Considerations for Deploying a Java Active Networking PlatformPractical Considerations for Deploying a Java Active Networking Platform
Practical Considerations for Deploying a Java Active Networking Platform
 
Architecture Proposition For Multimedia repository
Architecture Proposition For Multimedia repositoryArchitecture Proposition For Multimedia repository
Architecture Proposition For Multimedia repository
 

Último

Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
KarakKing
 

Último (20)

Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Plant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptxPlant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptx
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptx
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 

An Introduction to Software Architecture

  • 1. An Introduction to Software Architecture Rahim lotfi Mr_lotfi@ymail.com university of Isfahan
  • 2. university of Isfahan 2 Agenda  What’s Software Architecture?  Architectural Design Process?  Why Software Architecture?  Architecture types ? Levels ???
  • 3. university of Isfahan 3 What’s Software Architecture? • Architectural Design – process for identifying the subsystems that make up a system – defines framework for sub-system control and communication – Behavior as specified in collaborations among those elements
  • 4. university of Isfahan 4 Architectural Design Process? • System structuring – system decomposed into several subsystems – subsystem communication is established • Control modeling – model of control relationships among system components is established • Modular decomposition – identified subsystems decomposed into modules
  • 5. university of Isfahan 5 Why Software Architecture?
  • 6. university of Isfahan 6 Why Software Architecture? • Scale • Process • Cost • Schedule • Skills and development teams • Materials and technologies • Stakeholders • Risks
  • 7. university of Isfahan 7 Architecture types Client/Server Architectures client send-request server receive-request -Client-server architecture (client/server) is a network architecture in which each computer or process on the network is either a client or a server -Client computers provide an interface to allow a computer user to request services of the server and to display the results the server returns
  • 8. university of Isfahan 8 Architecture types • Components of Client/Server Architectures System simple_cs = { Component client = {Port send-request} Component server = {Port receive-request} Connector rpc = {Roles {caller, callee}} Attachments : {client.send-request to rpc.caller; server.receive-request to rpc.callee} }
  • 9. university of Isfahan 9 Architecture types • three-layer Architecture • Layer indicates logical separation of components, such as having distinct namespaces and classes for the Database Access Layer, Business Logic Layer and User Interface Layer.
  • 10. university of Isfahan 10 Architecture types • peer to peer Architecture
  • 11. university of Isfahan 11 Architecture types • MVC Architecture
  • 12. university of Isfahan 12 Architecture types • pipe and filters Architecture Pipe and Filters is architectural pattern in which an event triggers a series of processing steps on a component, transforming it uniquely on each step. Each step is a called a filter component and the entire sequence of called the pipeline
  • 13. university of Isfahan 13 Architecture types • publish-subscribe Architecture • In software architecture, publish–subscribe is a messaging pattern where senders of messages, called publishers, do not program the messages to be sent directly to specific receivers, called subscribers.
  • 15. university of Isfahan 15 thank for your attention