SlideShare une entreprise Scribd logo
1  sur  15
A Brief Presentation on Designing
and Documenting the Architecture
Jason Rodrigues
Software Architecture
Evolutionary Delivery Lifecycle
Adventure Builder Reference Application
The system used as an example in this architecture document is an adapted version
of the Adventure Builder Reference application, which was developed in the context of
the Java BluePrints program at Sun Microsystems.
The system used as an example in this architecture document is an adapted version
of the Adventure Builder Reference application, which was developed in the context of
the Java BluePrints program at Sun Microsystems.
Adventure Builder is a fictitious company that sells adventure packages for vacationers
over the Internet. The system provides four basic use cases (UC):
UC1. The user can visit the Adventure Builder Web site and browse the catalog of travel
packages, which include flights to specific destinations, lodging options, and activities
that can be purchased in advance. Activities include mountain biking, fishing, surfing
classes, hot air balloon tours, and scuba diving. The user can select transportation,
accommodation, and various activities to build his/her own adventure trip.
UC2. The user can place an order for a vacation package. To process this order, the
system has to interact with several external entities. A bank will approve the customer
payment, airline companies will provide the flights, lodging providers will book the hotel
rooms, and businesses that provide vacation activities will schedule the activities
selected by the customer.
UC3. After an order is placed, the user can return to check the status of his/her order.
This is necessary because some interactions with external entities are processed in the
background and may take hours or days to complete.
UC4. The internal system periodically interacts with its business partners (transportation,
lodging, and activity providers) to update the catalog with the most recent offerings.
Adventure Builder is a fictitious company that sells adventure packages for vacationers
over the Internet. The system provides four basic use cases (UC):
UC1. The user can visit the Adventure Builder Web site and browse the catalog of travel
packages, which include flights to specific destinations, lodging options, and activities
that can be purchased in advance. Activities include mountain biking, fishing, surfing
classes, hot air balloon tours, and scuba diving. The user can select transportation,
accommodation, and various activities to build his/her own adventure trip.
UC2. The user can place an order for a vacation package. To process this order, the
system has to interact with several external entities. A bank will approve the customer
payment, airline companies will provide the flights, lodging providers will book the hotel
rooms, and businesses that provide vacation activities will schedule the activities
selected by the customer.
UC3. After an order is placed, the user can return to check the status of his/her order.
This is necessary because some interactions with external entities are processed in the
background and may take hours or days to complete.
UC4. The internal system periodically interacts with its business partners (transportation,
lodging, and activity providers) to update the catalog with the most recent offerings.
Adventure Builder Reference Application
Adventure Builder Reference Application
Quality Attribute Requirements
The quality attribute scenarios (QAS) are listed below, separated by quality attribute.
Modifiability
QAS1. A new business partner (airline, lodging, or activity provider) that uses its own web
services interface is added to the system in no more than 10 person-days of effort for the
implementation. The business goal is easy integration with new business partners.
Performance
QAS2. A user places an order for an adventure travel package to the Consumer Web site.
The user is notified on screen that the order has been successfully submitted and is being
processed in less than five seconds.
QAS3. Up to 500 users click to see the catalog of adventure packages following a random
distribution over 1 minute; the system is under normal operating conditions; the maximal
latency to serve the first page of content is under 5 seconds; average latency for same is
less than 2 seconds.
Reliability
Quality Attribute Requirements
The quality attribute scenarios (QAS) are listed below, separated by quality attribute.
Modifiability
QAS1. A new business partner (airline, lodging, or activity provider) that uses its own web
services interface is added to the system in no more than 10 person-days of effort for the
implementation. The business goal is easy integration with new business partners.
Performance
QAS2. A user places an order for an adventure travel package to the Consumer Web site.
The user is notified on screen that the order has been successfully submitted and is being
processed in less than five seconds.
QAS3. Up to 500 users click to see the catalog of adventure packages following a random
distribution over 1 minute; the system is under normal operating conditions; the maximal
latency to serve the first page of content is under 5 seconds; average latency for same is
less than 2 seconds.
Reliability
Adventure Builder Reference Application
Reliability
QAS4. The Consumer Web site sent a purchase order request to the order processing
center (OPC). The OPC processed that request but didn’t reply to Consumer Web site
within five seconds, so the Consumer Web site resends the request to the OPC. The
OPC receives the duplicate request, but the consumer is not double-charged, data
remains in a consistent state, and the Consumer Web site is notified that the original
request was successful in one hundred percent of the times.
Security
QAS5. Credit approval and payment processing are requested for a new order. In one
hundred percent of the cases, the transaction is completed securely and cannot be
repudiated by either party. The business goals are to provide customers and business
partners confidence in security and to meet contractual, legal, and regulatory obligations
for secure credit transactions.
QAS6. The OPC experiences a flood of calls through the Web Service Broker endpoint
that do not correspond to any current orders. In one hundred percent of the times, the
system detects the abnormal level of activity, notifies the system administrator, and
continues to service requests in a degraded mode.
Availability
QAS7. The Consumer Web site is available to the user 24x7. If an instance of OPC
application fails, the fault is detected and the system administrator is notified in 30
seconds; the system continues taking order requests; another OPC instance is created;
and data remains in consistent state.
Reliability
QAS4. The Consumer Web site sent a purchase order request to the order processing
center (OPC). The OPC processed that request but didn’t reply to Consumer Web site
within five seconds, so the Consumer Web site resends the request to the OPC. The
OPC receives the duplicate request, but the consumer is not double-charged, data
remains in a consistent state, and the Consumer Web site is notified that the original
request was successful in one hundred percent of the times.
Security
QAS5. Credit approval and payment processing are requested for a new order. In one
hundred percent of the cases, the transaction is completed securely and cannot be
repudiated by either party. The business goals are to provide customers and business
partners confidence in security and to meet contractual, legal, and regulatory obligations
for secure credit transactions.
QAS6. The OPC experiences a flood of calls through the Web Service Broker endpoint
that do not correspond to any current orders. In one hundred percent of the times, the
system detects the abnormal level of activity, notifies the system administrator, and
continues to service requests in a degraded mode.
Availability
QAS7. The Consumer Web site is available to the user 24x7. If an instance of OPC
application fails, the fault is detected and the system administrator is notified in 30
seconds; the system continues taking order requests; another OPC instance is created;
and data remains in consistent state.
Top level module usecase
Order Processing Center ApplicationOrder Processing Center Application
Module decomposition view
TOP Level SOA view (Information notation)
TOP Level SOA view (UML notation)
Component and connector view (Information
notation)
Component and connector view (UML)
Allocation View (Deployment view - Informal)
Allocation View (Deployment view - UML)
Allocation View (Install view - UML)

Contenu connexe

Similaire à Design and documentation of software architectures

Deep dive into workflow of peer to peer lending software
 Deep dive into workflow of peer to peer lending software Deep dive into workflow of peer to peer lending software
Deep dive into workflow of peer to peer lending softwareJohn Carol
 
tourism-management-srs_compress-software-engineering.pdf
tourism-management-srs_compress-software-engineering.pdftourism-management-srs_compress-software-engineering.pdf
tourism-management-srs_compress-software-engineering.pdfchess188chess188
 
Feasibility studytemplate
Feasibility studytemplateFeasibility studytemplate
Feasibility studytemplateUmair Sarwer
 
Limman’s Center Inn Online Reservation and Billing System
Limman’s Center Inn Online Reservation and Billing SystemLimman’s Center Inn Online Reservation and Billing System
Limman’s Center Inn Online Reservation and Billing SystemJason Castellano
 
IRJET- Survey on Web Application Vulnerabilities
IRJET- Survey on Web Application VulnerabilitiesIRJET- Survey on Web Application Vulnerabilities
IRJET- Survey on Web Application VulnerabilitiesIRJET Journal
 
Authentication With Captive Portal
Authentication With Captive  PortalAuthentication With Captive  Portal
Authentication With Captive PortalWavecrest Computing
 
How to choose a payment service provider
How to choose a payment service providerHow to choose a payment service provider
How to choose a payment service providerIkajo International
 
IRJET-An Economical and Secured Approach for Continuous and Transparent User ...
IRJET-An Economical and Secured Approach for Continuous and Transparent User ...IRJET-An Economical and Secured Approach for Continuous and Transparent User ...
IRJET-An Economical and Secured Approach for Continuous and Transparent User ...IRJET Journal
 
Application on Know Your Customer Authentication
Application on Know Your Customer AuthenticationApplication on Know Your Customer Authentication
Application on Know Your Customer AuthenticationIRJET Journal
 
Final 622 Presentation
Final 622 PresentationFinal 622 Presentation
Final 622 PresentationSayali Jaitpal
 
SMART ASSIST SERVICE AT YOUR DOOR STEPS
SMART ASSIST SERVICE AT YOUR DOOR STEPSSMART ASSIST SERVICE AT YOUR DOOR STEPS
SMART ASSIST SERVICE AT YOUR DOOR STEPSIRJET Journal
 
Confirm Client Requirements
Confirm Client RequirementsConfirm Client Requirements
Confirm Client RequirementsSteven Cahill
 
Five performance factors you need to know about in 2018
Five performance factors you need to know about in 2018Five performance factors you need to know about in 2018
Five performance factors you need to know about in 2018Fredric Lundgren
 

Similaire à Design and documentation of software architectures (20)

Deep dive into workflow of peer to peer lending software
 Deep dive into workflow of peer to peer lending software Deep dive into workflow of peer to peer lending software
Deep dive into workflow of peer to peer lending software
 
tourism-management-srs_compress-software-engineering.pdf
tourism-management-srs_compress-software-engineering.pdftourism-management-srs_compress-software-engineering.pdf
tourism-management-srs_compress-software-engineering.pdf
 
PRODUCTS
PRODUCTSPRODUCTS
PRODUCTS
 
Feasibility studytemplate
Feasibility studytemplateFeasibility studytemplate
Feasibility studytemplate
 
TMCnet final
TMCnet finalTMCnet final
TMCnet final
 
Limman’s Center Inn Online Reservation and Billing System
Limman’s Center Inn Online Reservation and Billing SystemLimman’s Center Inn Online Reservation and Billing System
Limman’s Center Inn Online Reservation and Billing System
 
IRJET- Survey on Web Application Vulnerabilities
IRJET- Survey on Web Application VulnerabilitiesIRJET- Survey on Web Application Vulnerabilities
IRJET- Survey on Web Application Vulnerabilities
 
Authentication With Captive Portal
Authentication With Captive  PortalAuthentication With Captive  Portal
Authentication With Captive Portal
 
How to choose a payment service provider
How to choose a payment service providerHow to choose a payment service provider
How to choose a payment service provider
 
IRJET-An Economical and Secured Approach for Continuous and Transparent User ...
IRJET-An Economical and Secured Approach for Continuous and Transparent User ...IRJET-An Economical and Secured Approach for Continuous and Transparent User ...
IRJET-An Economical and Secured Approach for Continuous and Transparent User ...
 
travelo.pptx
travelo.pptxtravelo.pptx
travelo.pptx
 
Programming.pdf
Programming.pdfProgramming.pdf
Programming.pdf
 
Chapter 8.pdf
Chapter 8.pdfChapter 8.pdf
Chapter 8.pdf
 
Application on Know Your Customer Authentication
Application on Know Your Customer AuthenticationApplication on Know Your Customer Authentication
Application on Know Your Customer Authentication
 
Final 622 Presentation
Final 622 PresentationFinal 622 Presentation
Final 622 Presentation
 
SMART ASSIST SERVICE AT YOUR DOOR STEPS
SMART ASSIST SERVICE AT YOUR DOOR STEPSSMART ASSIST SERVICE AT YOUR DOOR STEPS
SMART ASSIST SERVICE AT YOUR DOOR STEPS
 
main project doument
main project doumentmain project doument
main project doument
 
Confirm Client Requirements
Confirm Client RequirementsConfirm Client Requirements
Confirm Client Requirements
 
Praveen cv performancetesting
Praveen cv performancetestingPraveen cv performancetesting
Praveen cv performancetesting
 
Five performance factors you need to know about in 2018
Five performance factors you need to know about in 2018Five performance factors you need to know about in 2018
Five performance factors you need to know about in 2018
 

Plus de Jason Rodrigues

Plus de Jason Rodrigues (8)

Johari WIndow in PPT.pptx
Johari WIndow in PPT.pptxJohari WIndow in PPT.pptx
Johari WIndow in PPT.pptx
 
Startup and incubation
Startup and incubationStartup and incubation
Startup and incubation
 
Paris Conference on Applied Psychology
Paris Conference on Applied PsychologyParis Conference on Applied Psychology
Paris Conference on Applied Psychology
 
Rodrigues
RodriguesRodrigues
Rodrigues
 
Safety Presentation
Safety PresentationSafety Presentation
Safety Presentation
 
Wrap up
Wrap upWrap up
Wrap up
 
Data preprocessing
Data preprocessingData preprocessing
Data preprocessing
 
A Sales Approach For Cloud Computing
A Sales Approach For Cloud ComputingA Sales Approach For Cloud Computing
A Sales Approach For Cloud Computing
 

Dernier

"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 

Dernier (20)

"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 

Design and documentation of software architectures

  • 1. A Brief Presentation on Designing and Documenting the Architecture Jason Rodrigues Software Architecture
  • 3. Adventure Builder Reference Application The system used as an example in this architecture document is an adapted version of the Adventure Builder Reference application, which was developed in the context of the Java BluePrints program at Sun Microsystems. The system used as an example in this architecture document is an adapted version of the Adventure Builder Reference application, which was developed in the context of the Java BluePrints program at Sun Microsystems. Adventure Builder is a fictitious company that sells adventure packages for vacationers over the Internet. The system provides four basic use cases (UC): UC1. The user can visit the Adventure Builder Web site and browse the catalog of travel packages, which include flights to specific destinations, lodging options, and activities that can be purchased in advance. Activities include mountain biking, fishing, surfing classes, hot air balloon tours, and scuba diving. The user can select transportation, accommodation, and various activities to build his/her own adventure trip. UC2. The user can place an order for a vacation package. To process this order, the system has to interact with several external entities. A bank will approve the customer payment, airline companies will provide the flights, lodging providers will book the hotel rooms, and businesses that provide vacation activities will schedule the activities selected by the customer. UC3. After an order is placed, the user can return to check the status of his/her order. This is necessary because some interactions with external entities are processed in the background and may take hours or days to complete. UC4. The internal system periodically interacts with its business partners (transportation, lodging, and activity providers) to update the catalog with the most recent offerings. Adventure Builder is a fictitious company that sells adventure packages for vacationers over the Internet. The system provides four basic use cases (UC): UC1. The user can visit the Adventure Builder Web site and browse the catalog of travel packages, which include flights to specific destinations, lodging options, and activities that can be purchased in advance. Activities include mountain biking, fishing, surfing classes, hot air balloon tours, and scuba diving. The user can select transportation, accommodation, and various activities to build his/her own adventure trip. UC2. The user can place an order for a vacation package. To process this order, the system has to interact with several external entities. A bank will approve the customer payment, airline companies will provide the flights, lodging providers will book the hotel rooms, and businesses that provide vacation activities will schedule the activities selected by the customer. UC3. After an order is placed, the user can return to check the status of his/her order. This is necessary because some interactions with external entities are processed in the background and may take hours or days to complete. UC4. The internal system periodically interacts with its business partners (transportation, lodging, and activity providers) to update the catalog with the most recent offerings.
  • 5. Adventure Builder Reference Application Quality Attribute Requirements The quality attribute scenarios (QAS) are listed below, separated by quality attribute. Modifiability QAS1. A new business partner (airline, lodging, or activity provider) that uses its own web services interface is added to the system in no more than 10 person-days of effort for the implementation. The business goal is easy integration with new business partners. Performance QAS2. A user places an order for an adventure travel package to the Consumer Web site. The user is notified on screen that the order has been successfully submitted and is being processed in less than five seconds. QAS3. Up to 500 users click to see the catalog of adventure packages following a random distribution over 1 minute; the system is under normal operating conditions; the maximal latency to serve the first page of content is under 5 seconds; average latency for same is less than 2 seconds. Reliability Quality Attribute Requirements The quality attribute scenarios (QAS) are listed below, separated by quality attribute. Modifiability QAS1. A new business partner (airline, lodging, or activity provider) that uses its own web services interface is added to the system in no more than 10 person-days of effort for the implementation. The business goal is easy integration with new business partners. Performance QAS2. A user places an order for an adventure travel package to the Consumer Web site. The user is notified on screen that the order has been successfully submitted and is being processed in less than five seconds. QAS3. Up to 500 users click to see the catalog of adventure packages following a random distribution over 1 minute; the system is under normal operating conditions; the maximal latency to serve the first page of content is under 5 seconds; average latency for same is less than 2 seconds. Reliability
  • 6. Adventure Builder Reference Application Reliability QAS4. The Consumer Web site sent a purchase order request to the order processing center (OPC). The OPC processed that request but didn’t reply to Consumer Web site within five seconds, so the Consumer Web site resends the request to the OPC. The OPC receives the duplicate request, but the consumer is not double-charged, data remains in a consistent state, and the Consumer Web site is notified that the original request was successful in one hundred percent of the times. Security QAS5. Credit approval and payment processing are requested for a new order. In one hundred percent of the cases, the transaction is completed securely and cannot be repudiated by either party. The business goals are to provide customers and business partners confidence in security and to meet contractual, legal, and regulatory obligations for secure credit transactions. QAS6. The OPC experiences a flood of calls through the Web Service Broker endpoint that do not correspond to any current orders. In one hundred percent of the times, the system detects the abnormal level of activity, notifies the system administrator, and continues to service requests in a degraded mode. Availability QAS7. The Consumer Web site is available to the user 24x7. If an instance of OPC application fails, the fault is detected and the system administrator is notified in 30 seconds; the system continues taking order requests; another OPC instance is created; and data remains in consistent state. Reliability QAS4. The Consumer Web site sent a purchase order request to the order processing center (OPC). The OPC processed that request but didn’t reply to Consumer Web site within five seconds, so the Consumer Web site resends the request to the OPC. The OPC receives the duplicate request, but the consumer is not double-charged, data remains in a consistent state, and the Consumer Web site is notified that the original request was successful in one hundred percent of the times. Security QAS5. Credit approval and payment processing are requested for a new order. In one hundred percent of the cases, the transaction is completed securely and cannot be repudiated by either party. The business goals are to provide customers and business partners confidence in security and to meet contractual, legal, and regulatory obligations for secure credit transactions. QAS6. The OPC experiences a flood of calls through the Web Service Broker endpoint that do not correspond to any current orders. In one hundred percent of the times, the system detects the abnormal level of activity, notifies the system administrator, and continues to service requests in a degraded mode. Availability QAS7. The Consumer Web site is available to the user 24x7. If an instance of OPC application fails, the fault is detected and the system administrator is notified in 30 seconds; the system continues taking order requests; another OPC instance is created; and data remains in consistent state.
  • 7. Top level module usecase Order Processing Center ApplicationOrder Processing Center Application
  • 9. TOP Level SOA view (Information notation)
  • 10. TOP Level SOA view (UML notation)
  • 11. Component and connector view (Information notation)
  • 13. Allocation View (Deployment view - Informal)