SlideShare a Scribd company logo
1 of 92
Download to read offline
Midterm Review
SoftwareDesign and Architecture
Definitionsummary
Systems serve a purpose
Systemshaveastructure
Systemshavebehaviour
Systemstakeinput(s) fromtheirenvironmentandproduceoutput(s)
Systemsandtheirpropertiesareveryoftencomplex
Modelabstractionandgranularitylevel
Figure:CarComponents, imagesource:http://www.bestcarsguide.com/
Modelabstractionandgranularitylevel
Figure:Carcomponentsataveryfinelevelofgranularity,imagesource:
http://www.flickr.com/photos/rizzato/2610112430/
Definition
Asoftware architecture isacollectionofmodelsofasoftwaresystemat
variousabstractionanddetaillevels. Themodelsdescribe:
the systemasawhole
systemcomponents
componentconnections
howcomponentinteracttofulfill thesystempurpose.
Methodology
Aftertheinitialrequirementsanalysisbutbeforesoftwaredesign
Thefirstarchitectureisalsoacommunicationbasiswiththecustomer
Inputsforthedevelopmentofthearchitecture:
1
2
Requirements
Context(technical,organizational,business,...)
Functionalrequirements
Atechnicalexpressionofwhatasystemwill do
Arise from stakeholderneeds
Approaches
(a) Structured languages: softwarerequirementsspecification
(b) Formal models: e.g.state-charts
(c) Use cases: structureddescriptionofuserinteractionswiththesystem
(d) User stories, e.g.narrativesandpersonas
(e) Mock-ups,e.g.sketchesoftheUI
Non-functionalrequirements
Other needs than directly functional or business related
Generallyexpressedintheformof quality attributes (x-abilities)
Runtime qualityattributes
▶ e.g.performance, usability, reliability, security
Non-runtime qualityattributes
▶ e.g.maintainability, evolvability, testability, reusability, integrability,
configurability,scalability
Contextualrequirements
Whattechnologies areavailable?
▶ Existing internalcomponents
▶ Existing off the shelfcomponents, e.g.databases,middleware
Expertiseofthedevelopmentteam(andavailabilityofresources)
Organisationofteams,e.g.geographicallydispersed
Previous experience of users/customers
Technical,business,market,legal,ethical,...
Architecturalstructure
Whatisacomponent?
Whatisaconnector?
Componentsmightbesubsystems,separateprocesses,sourcecode
packages,...
Connectorsmightbenetworkprotocols,methodinvocations,
associations,...
Noclear“language”fordiagrams
Thecombinationofdiagramsandadditionalmaterialisan
architecturalmodel
Architecturalbehaviour
Complementing structure is architectural behaviour
Interactionofsystemelementstoperformsomeusefulwork
Functionality vs.behaviour
Functionality iswhatthesystemcandoandbehaviour istheactivity
sequence
Architecturalviews
• Wecanexamineasystemfromdifferentpoints
ofview Differentkindsofviews
• Conceptual:componentsaresetofresponsibilitiesand
connectors areflowofinformation
• Execution:componentsareexecutionunits
(processes)and connectorsaremessagesbetween
processes
• Implementation:componentsarelibraries,sourcecode,
files,etcand connectorsareprotocols,apicalls,etc.
Architecturalviews
Theconceptual architecture considersthestructureofthesystemin
termsofitsdomain-level functionality
Theexecution architecture considersthesystemintermsofits
runtime structure
Theimplementation architecture considersthesystemintermsofits
build-time structure
ConceptualArchitecture
Focuses on domain-levelresponsibilities
Initial architecturaldesign
Firstresponsetostakeholderneeds
Designbyanalysingrequirements
Containscomponentsandconnectors(box-and-line)
Providesanataglanceoverviewofthestructureofasystem
Componentsinconceptualarchitecture
Setofrelateddomain-levelresponsibilities
Initially,responsibilitiesarisefromfunctionalrequirements
However,designisaniterativeprocess
Furtheriterationstakeintoaccountnon-functionalrequirements
Connectorsinconceptualarchitecture
Connectorsindicatethatconnectedcomponentsexchange
information
Arrowsindicate information flow
Labelsdescribekindofinformation
Insomecasestwo-directionalconnectors: labelsshouldbeputnear
arrows
Conceptualcomponentsoftenhavenodirectcounterpartinthefinal
software
...noneedtocareaboutphysicallocation
Categorisation
Data Function Stakeholder System Abs.concept
places calculate administrator externalservices navigationtool
database add/remove(places) user optimalroute
connections search shortestpath
transp. mode buy(ticket) fastestroute
tramway draw mosteconomical
route usermanagement cheapest
users register pleasant
userpreference log-in /log-out interactivemap
credentials purchase
ticket download
register
login
Behaviouralexploration
Componentstereotypes
Figure:Source:Software ArchitecturePrimer
ScriptofConceptualArchitecture
Steps of developing the conceptual architecture
1 Clarify components &responsibilities
▶ → e.g.byuse of use-casemaps
Clarifyconnectors
▶ → e.g.bylabelling information flow
Evaluatebehaviour(againstexpectedscenarios)
Identify stereotypes &structures
Definethedatastructure&models
Simplifyarchitecture
2
3
4
5
6
Conceptualarch.designrules
Guidelines for defining components
Granularity
Cohesion
Coupling
Execution View
Focuses on the system runtime structure
Hardware elements, subsystems, processes and threads
Suited for examining quality attributes, most-notablyruntime
attributes
E.g. performance, security, usability,...
But also e.g. scalability
Similarly to conceptual architecture comprised of components and
connectors
Components in execution architecture
Concurrent components (abstraction created by execution of a
software program)
If the system is a single-computer, single-process, single-thread
system then the execution architecture is very simple
Figure: The simplestexecution architecture
Connectors inexecution architecture
Connectors indicate that one component calls another
The arrow depicts the call direction
The arrow head points from the calling component to the called
component
Three different types of arrows for three different calling scenarios
Connectors inexecution architecture
Synchronouscommunication: the calling components waits for a
response of the calledcomponent
Asynchronous communication: the calling component does notwait
for a response
Callback: The calling component receives a response asynchronously
by setting a means by which the called component can send response
later
Connectors inexecution architecture
Figure: Execution connectors from Software ArchitecturePrimer
Conceptual vs. Execution arch.
Element Conceptual Execution
Components Domain-level responsibilities Unit of concurrentactivity
Connectors Information flow Invocation
Views Single Multiple
Concurrent subsystemsmodel
Top-level execution model
To get an overview of the running system
Subsystems can be quite complex and have many processes and/or
threads
However, a concurrent subsystem is not something that is clearly
defined
In some cases it is clear
Process model
• Restricting a concurrency model to processes
depicts the execution structure
• Basically, you examine each concurrent
subsystem for processes You do not go into
details on external systems
• Typically, such models will be only slightly
more detailed than concurrent subsystem
models
Execution stereotypes
Figure: Execution stereotypes from Software ArchitecturePrimer
Execution behaviour
Wewill use-case maps to model behaviour
Actually we need only to verify that execution architecture supports
the desired behaviour
→ find errors in the architecture
Wecan use the same use-case maps from the conceptual architecture
Execution behaviour
Figure: Execution behaviour for use case “new route”
ImplementationArchitecture
Focuses on how the system is built
Which technological elements are needed to implement the system
Software packages, libraries, frameworks, classes, ...
Addresses non-runtime requirements &quality attributes:
configurability, testability, reusability, ...
Comprised of components and connectors
ImplementationArchitecture
Components and connectors reflect software entities and their
relationships at the level of source and binary code
Typically a number of implementation models
Each model focuses on one of the concurrent subsystems or processes
from the execution view
Components
Twotypesofcomponents:
Application
Infrastructure
Components
Application components
... are responsible for implementing domain-level responsibilities
These are responsibilities found in a detailed conceptual architecture
Application components might be realized as binary packages, source
packages, andfiles
Components
Infrastructure components
... are needed to make the system run but are not related to the
application functionality
E.g. HTTP Connection Handler in our sample is a typical infrastructure
component
Whether a particular component is an application or an infrastructure
component depends on the application
E.g. if we are building a Web application server then HTTP Connection
Handler is an application component
Componentstereotypes
Figure: Implementation stereotypes from Software Architecture Primer
Connectors
Inimplementation architecture connectors represent a “uses”
relation
The arrow depicts the direction of this relation
The nature of communication is depicted through the connector styles
Connectors
Figure: Implementation connectors from Software Architecture Primer
Conceptual vs.Implementation
Element Conceptual Implementation
Components Domain-level responsibilities Implementation module
Connectors Information flow “Uses” relationship
Views Single Split
Conceptual vs. Executionvs. Implementation
Figure: Conceptual vs. execution vs. implementation from Software Architecture
Primer
Implementation architecturedesign
1 Define application components
Define infrastructurecomponents
Define interfaces
Behaviour design and verification
2
3
4
Weighted Scoring Method - Example
Behaviordesign
Now we need to go into details
Use-case maps are too high level here
Weneed to investigate behaviour at the operation level
Thus, we need for example sequence diagrams
Still, use-case maps might be used to analyse e.g. runtime attributes
Sample interface Sequence Diagram
Figure:Sample sequence diagram
Prototype
Toshow that the architectural solution is feasible we implement
prototypes
For each identified application component we provide
implementation
Deploy it within the infrastructure components
Test it and check correctness, functionality, quality-attributes
Two types of prototypes: technical and executable
Mock-Ups
Mock-ups are special technical prototypes, especially for user
interfaces
Serve as the communication tool with the stakeholders (and within
the team)
Should give an overview on how the system will look like
But does not contain any functionality
There are specialised tools to create mock-ups
Architectural style definition
Architectural style defines the structural pattern, which consists
of the components that are used
the connections that can be used
set of constraints how they can be used
Classification of styles
1 Data-flow architectures
Data-centered architectures
Abstraction layer architectures
N-tier architectures
Notification architectures
Remote invocation and service architectures
Heterogeneous architectures
2
3
4
5
6
7
Data-flow architectures
Data-flow architectures can be classified into batch-sequential
architectures and pipes and filters
In the batch sequential style each step runs to completion before
the next step starts
E.g. UNIX command line pipes
In pipe and filters style steps might run concurrently processing
parts of data incrementally
Pipes and filters
Data flows through pipes: communication channels between filters
Processing units: filters
Depending on where the filters reside different types of execution
architectures might apply
E.g. same process: filters run within threads
E.g. same machine: filters run within own processes
E.g. network: pipes use the networking architecture
Data-centered architectures
• These architectures have the goal of achieving the quality of
integrability of data.
• The term refers to systems in which the access and update of a
widely accessed data store is their primary goal.
• Basically, it is nothing more than a centralized data store
that communicates with a number of clients
• Important for this styles are three protocols: communication, data
definition and data manipulation protocol
Data-centered architectures
The means of communication distinguishes the two subtypes:
repository and blackboard
Repository: a client sends a request to the system to perform a
necessary action (e.g. insertdata)
Blackboard: the system sends notification and data to subscribers
when data of interest changes, and is thus active
Repository
Figure: Repository style
Blackboard
Figure: Blackboard style
Database architecture
One of the most well-known examples of the data-centered
architecture, is a database architecture
There is a common database schema (i.e. meta-structure of the
repository) - created with data definition protocol
E.g. in RDBMS a set of related tables with fields, data types, keys,...
Abstract layer architectures
Layering: the structure of the system is organized into set of layers
Each layer is on the top of another layer
Well-defined interfaces between layers
Reduces complexity, improves modularity, reusability,
maintainability
Different criteria for layering: most notablyabstraction
N-tier architectures
• The N-tier architecture is the modern client-server
architecture Originated with business applications
• Through the popularity of the Web today typically
related with Web applications
• Conceptually separate architecture into presentation,
application and data storage layers
2-tier architectures
Clients are typically rich (ui+applogic+communication)
Servers store data
Each client runs a complete application
Drawbacks: each client has to know how to communicate with all
data servers
Scalability is compromised because client are tightly coupled with
servers
3-tier architectures
Evolved from 2-tier architectures to solve their drawbacks
A third tier is inserted between clients and data servers
Application or business logic tier: middle tier
Typically middle tier is on the server side (but recently might be
split between the server and the client)
Notification architectures
Architectures where information and activity is propagated by a
notification mechanism
When there are complex communication patterns that are
not known at design time
Basically, components interested in events register their interest
When an event occurs the interested components are notified
Well-known example: event handling inGUIs
Client-Server
Basicconcept:
Theclient usesaservice
The server provides aservice
Theservicecanbeanyresource
E.g.data, file, CPU,display device
Typically connected via anetwork
Clientsareindependent fromeachother
Peer topeer
Separation between client and server is removed
Eachclientisaserveratthesametime,calledpeer
Thegoalistodistributetheprocessing or data amongmanypeers
Nocentraladministrationorcoordination
Remoteinvocationandservicearchitectures
Remoteinvocationarchitecturesinvolvedistributedprocessing
components
Typically,aclientcomponentinvokesamethod(function)onaremote
component
Remoteinvocationandservicearchitectures
Webservices
UseWebprotocolsforcommunication
However,theaddressabilityisstillnotmanagedbecauseyouhaveto
knowhowtoaddressobjectsinaremoteservice
WebservicesareinessenceonlyremoteprocedurecallsusingWeb
protocols
Sameadvantagesand disadvantagesapply
Broker
Separate communication fromtheapplicationfunctionality
Supportfordistributedsystems
Thebrokerhidesthecommunicationfromthecomponentsofthe
system
Thebrokercoordinatesthecommunication
Abrokercanbeusedtotransparentlychangeanon-distributedsystem
into adistributedone
Forexample:Theclientinteractswitharemoteobjectviaabroker
Note: Similartotheproxydesignpattern
ModelViewController(MVC)
Motivation: reusabilityandseparationofconcerns
Threeroles: model,view&controller
Model: encapsulatesthebehavioranddataoftheapplication
domain
View: rendersthemodelforpresentation
Controller: Reactsonuserinput,modifiesthemodelanddispatches
to theview
Both,controllerandview,dependonthemodel
ControllerandviewarepartoftheUI
Heterogeneousarchitectures
Norealsystemfollowsstrictlyonlyasinglestyle
Stylesthemselvesarenotthatstrictlyseparatedbuttheyareblurred
Architecturesmightbeconceptuallyheterogeneous
N-tierarchitecturesarelayeredarchitectures
N-tierarchitecturesaretypicallydata-centricarchitectures
Thinclientsinvolvesomesortofnotificationarchitecture
Distributed Architectures
Parallel computing vs. distributedcomputing
In parallel computing all component share a common memory,
typically threads within a single program
In distributed computing each component has it own memory
▶ Typically in distributed computing the individual componentsare
connected over anetwork
▶ Dedicated programming languages (or extensions) forparallel
computing
Distributed Architectures
Distributed architectures
Most complex solution
▶ Due to the added parallelism of data and processing
▶ And therefore an increased risk oferrors
Overall latency will be the the one of the slowest machine
▶ I.e. latency cannot be decreased via distributedsolutions
Therefore the architecture needs to be sound
... focus on abstraction andcomposition
Note: In practice people are often biased towards technologies they know (e.g. SQL)
Distributed ArchitecturesBasics
Number of issues toaddress
1 Serialisation
Group membership
Leader election
Distributed locks
Barriers
Shared resources
Configuration
Asynchronous Architectures -Motivation
Synchronous architectures
Each call terminates after the request has been completely processed
E.g. traditional data-centric architectures (databases)
Pro: Easy to use and predictivebehaviour
Con: Does not deal well with load (need to plan with the worst case)
Asynchronous architectures
The call returns before the request has been processed
The processing happens in the background
Con: Non predictive behaviour
Pro: Load can be distributed over time, thus better scalability
Asynchronous Architectures -Worker
Asynchronous workerarchitecture
The client issues a call without waiting for the result
Asynchronous Architectures - Queue&Worker
Asynchronous queue & worker architecture
The client puts the request into the queue, the workers poll the queue for
requests
Asynchronous Architectures - StreamProcessing
Two basic stream processing types
One-at-a-time
▶ Each event is processedindividually
Micro-batch
▶ Multiple events are combined into a single batch
Lambda Architecture -Overview
Kappa Architecture -Motivation
Basic idea behind Kappa Architecture
The Lambda Architecture is relatively complex
Most of the problems can be solved via a streaming approach
→ treat the batch processing as if it were a stream of data
▶ Have the framework optimise for the two cases (stream vs. batch)
http://www.kappa-architecture.com/
Competing Architectures
Resource-Oriented Architectures (RESTful)
RPC-Style Architectures (SOA)
REST-RPC Hybrid Architectures
Motivation forMicroservices
Traditional service architectures
Services have oftenbeen used to decouple the UI from the server components
Services have been envisioned to provide high level functionality
Defined and coordinated interfaces versioned via schema (or something similar)
Microservices
Expose finer grained functionalities in form of services
Services are developed and deployed independently from each other
Use API versioning locally to handlechanges
Microservices vs. SOA
Netflix
• Scalable computing instances (AWS EC2)
• Scalable storage (AWS S3)
• Business logic microservices (purpose-built frameworks by
Netflix)
• Scalable distributed databases (AWS DynamoDB, Cassandra)
• Big data processing and analytics jobs (AWS EMR, Hadoop,
Spark, Flink, Kafka and other purpose-built tools by Netflix)
• Video processing and transcoding (purpose-built tools by
Netflix)
• Open Connect CDN is a network of servers called Open
Connect Appliances (OCAs)
Backend on AWS
Playback architecture for streaming videos
Backend architecture
Client App Component
API Gateway Service
Application API
Microservices
Data Stores deployed on AWS
Stream Processing Pipeline
7.1-Midterm-review-and-examplessssssss.pdf

More Related Content

Similar to 7.1-Midterm-review-and-examplessssssss.pdf

software engineering Architecture and design Unit 3.pptx
software engineering Architecture and design Unit 3.pptxsoftware engineering Architecture and design Unit 3.pptx
software engineering Architecture and design Unit 3.pptxSomnathMule5
 
Ppt slides 05
Ppt slides 05Ppt slides 05
Ppt slides 05locpx
 
chapter-6-Software_Engineering_P1_MohamedElhawy_19135002.pptx
chapter-6-Software_Engineering_P1_MohamedElhawy_19135002.pptxchapter-6-Software_Engineering_P1_MohamedElhawy_19135002.pptx
chapter-6-Software_Engineering_P1_MohamedElhawy_19135002.pptxMahmoudZidan53
 
Pattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecturePattern oriented architecture for web based architecture
Pattern oriented architecture for web based architectureshuchi tripathi
 
Lecture 12 requirements modeling - (system analysis)
Lecture 12   requirements modeling - (system analysis)Lecture 12   requirements modeling - (system analysis)
Lecture 12 requirements modeling - (system analysis)IIUI
 
Cs 1023 lec 2 (week 1) edit 1
Cs 1023  lec 2 (week 1) edit 1Cs 1023  lec 2 (week 1) edit 1
Cs 1023 lec 2 (week 1) edit 1stanbridge
 
Cs 1023 lec 2 (week 1) edit 1
Cs 1023  lec 2 (week 1) edit 1Cs 1023  lec 2 (week 1) edit 1
Cs 1023 lec 2 (week 1) edit 1stanbridge
 
Software Architecture
Software Architecture Software Architecture
Software Architecture ssuser9d62d6
 
Component diagram
Component diagramComponent diagram
Component diagramAbdul Manan
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfMeagGhn
 
Ch7-Software Engineering 9
Ch7-Software Engineering 9Ch7-Software Engineering 9
Ch7-Software Engineering 9Ian Sommerville
 

Similar to 7.1-Midterm-review-and-examplessssssss.pdf (20)

software engineering Architecture and design Unit 3.pptx
software engineering Architecture and design Unit 3.pptxsoftware engineering Architecture and design Unit 3.pptx
software engineering Architecture and design Unit 3.pptx
 
Ppt slides 05
Ppt slides 05Ppt slides 05
Ppt slides 05
 
chapter-6-Software_Engineering_P1_MohamedElhawy_19135002.pptx
chapter-6-Software_Engineering_P1_MohamedElhawy_19135002.pptxchapter-6-Software_Engineering_P1_MohamedElhawy_19135002.pptx
chapter-6-Software_Engineering_P1_MohamedElhawy_19135002.pptx
 
Ch10
Ch10Ch10
Ch10
 
Ch10
Ch10Ch10
Ch10
 
Pattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecturePattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecture
 
Chapter 9
Chapter 9Chapter 9
Chapter 9
 
Lecture 12 requirements modeling - (system analysis)
Lecture 12   requirements modeling - (system analysis)Lecture 12   requirements modeling - (system analysis)
Lecture 12 requirements modeling - (system analysis)
 
Software design i (2) (1)
Software design   i (2) (1)Software design   i (2) (1)
Software design i (2) (1)
 
Cs 1023 lec 2 (week 1) edit 1
Cs 1023  lec 2 (week 1) edit 1Cs 1023  lec 2 (week 1) edit 1
Cs 1023 lec 2 (week 1) edit 1
 
Cs 1023 lec 2 (week 1) edit 1
Cs 1023  lec 2 (week 1) edit 1Cs 1023  lec 2 (week 1) edit 1
Cs 1023 lec 2 (week 1) edit 1
 
Software Architecture
Software Architecture Software Architecture
Software Architecture
 
Component diagram
Component diagramComponent diagram
Component diagram
 
5 architecture
5 architecture5 architecture
5 architecture
 
5-Architecture.ppt
5-Architecture.ppt5-Architecture.ppt
5-Architecture.ppt
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
 
System engineering
System engineeringSystem engineering
System engineering
 
Poster Vensim Repast
Poster Vensim RepastPoster Vensim Repast
Poster Vensim Repast
 
SA_UNIT_1.pptx
SA_UNIT_1.pptxSA_UNIT_1.pptx
SA_UNIT_1.pptx
 
Ch7-Software Engineering 9
Ch7-Software Engineering 9Ch7-Software Engineering 9
Ch7-Software Engineering 9
 

Recently uploaded

A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)Christopher H Felton
 
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607dollysharma2066
 
Russian Call Girls in Kolkata Ishita 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Ishita 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Ishita 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Ishita 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls KolkataLow Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...aditipandeya
 
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130  Available With RoomVIP Kolkata Call Girl Kestopur 👉 8250192130  Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Roomdivyansh0kumar0
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts servicevipmodelshub1
 
Denver Web Design brochure for public viewing
Denver Web Design brochure for public viewingDenver Web Design brochure for public viewing
Denver Web Design brochure for public viewingbigorange77
 
Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITMgdsc13
 
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一Fs
 
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...akbard9823
 
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With RoomVIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Roomgirls4nights
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)Damian Radcliffe
 
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130  Available With RoomVIP Kolkata Call Girl Alambazar 👉 8250192130  Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Roomdivyansh0kumar0
 

Recently uploaded (20)

A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
 
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
 
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
Russian Call Girls in Kolkata Ishita 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Ishita 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Ishita 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Ishita 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls KolkataLow Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Call Girls In South Ex 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
Call Girls In South Ex 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICECall Girls In South Ex 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
Call Girls In South Ex 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
 
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
 
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130  Available With RoomVIP Kolkata Call Girl Kestopur 👉 8250192130  Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
 
Denver Web Design brochure for public viewing
Denver Web Design brochure for public viewingDenver Web Design brochure for public viewing
Denver Web Design brochure for public viewing
 
Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITM
 
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
 
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
 
Call Girls Service Dwarka @9999965857 Delhi 🫦 No Advance VVIP 🍎 SERVICE
Call Girls Service Dwarka @9999965857 Delhi 🫦 No Advance  VVIP 🍎 SERVICECall Girls Service Dwarka @9999965857 Delhi 🫦 No Advance  VVIP 🍎 SERVICE
Call Girls Service Dwarka @9999965857 Delhi 🫦 No Advance VVIP 🍎 SERVICE
 
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
 
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With RoomVIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
 
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)
 
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130  Available With RoomVIP Kolkata Call Girl Alambazar 👉 8250192130  Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Room
 

7.1-Midterm-review-and-examplessssssss.pdf