csci 375 - canadacarruths/courses/csci375/lectures/11archdesign… · csci 375 architectural...
TRANSCRIPT
CSCI 375ARCHITECTURAL DESIGN
Today’s planArchitectural Design!
Modern Web-based SystemAmazon.com
Internet
PaymentProcessor
Shipper Amazon
System’s Architecture is composed of•Computing devices•Networks•Software
•Protocols
Computing DevicesServersPersonal Computers
NetworksNetwork is a collection of:◦ Hardware◦ Software◦ Transmission media
Lets devices communicate with each otherKinds:◦ LAN◦ Internet Backbone◦ WAN◦ WWW
SoftwareTwo main types:◦ Applications◦ Systems Software
Internet
PaymentProcessor
Shipper Amazon
Software:• OS• Browsers• Plugins• Apps
Software:• OS• Web server• Applications• DBMS
ProtocolsNetwork Protocols◦ Dictate how messages are transmitted
Web Protocols◦ URL◦ HTML◦ XML◦ HTTP(S)
Architectural ConceptsWe discussed earlier:◦ Technological Architecture◦ Application architecture
Architectural ConceptsSaasWeb ServicesDistributed Architecture
Distributed Architecture
View Layer Domain Layer Data Layer
User Request
Formattedresponse
Informationrequest
Unformattedresponse
Data accessrequest
Data accessresponse
Modeling the ArchitectureArchitectural Diagrams◦ Location Diagrams◦ Network Diagrams◦ Deployment Diagrams
Location Diagrams
https://www.flickr.com/photos/nrcgov/36631031412
Network Diagrams
Internet
PaymentProcessor
Shipper Amazon
Activity: Spring Breaks ‘r’ Us
Deployment Diagrams<<device>> Application server
<<asp server>> Microsoft IIS 7.0
Reporting subsystem
Sales subsystem
Customer Account
subsystem
Order Fulfillment subsystemMarketing
subsystem
<<device>> DB server
<<dbms>> Microsoft SQL Server 2013
<<schema>>Customers
<<schema>>Products
<<schema>>Orders
<<protocol>>SQL
Describing the EnvironmentWe need to think about:◦ External systems◦ Technological Architecture
Key Questions1. What features of existing/proposed system that will support or
constrain the system?2. What external systems and databases will you have to interact
with?3. What devices will be used to automate inputs and outputs4. What UI will be used?
RMO Environment Description
Internet
Supply ChainManagement server
Retail StoreServer
Web storefrontserver
Phone & mail-orderserver
firewall
GigabitLAN
VPN gateway (manuf. & distr.)
VPN(retail stores)
Credit verification server
VPNgateway
VPNgateway
Distribution and Manufacturing
workstations
Retail storeworkstations
Customerdevices
Planned Updates to RMO systemSupport for mobile devicesUpdates to support Web TechnologyDirect interface with Social Media
Possible use of external service providers to host all or some of the CSMS
How will these updates impact system?Support for mobile devicesUpdates to support Web TechnologyDirect interface with Social Media
SecurityPossible use of external service providers to host all or some of the CSMS
How will these updates impact system?
Internet
Webservers
Databaseservers
Content management
servers
Applicationservers
firewall
GigabitLAN
VPN gateway (manuf. & distr.)
VPN(retail stores)
Paymentservers
VPNgateway
VPNgateway
Distribution and Manufacturing
Employee devices
Retail storeEmployee devices
Customerdevices
App storesCertificateservers
Socialnetworking
Designing Application ComponentsApplication Component Boundaries◦ Where does one component start and another end?◦ Top-down approach:
◦ Break whole into smaller related parts◦ Factoring
◦ Bottom-up approach:◦ Group functions together ◦ Grouping
Designing Application Components
View Layer Domain Layer Data Layer
User Request
Formattedresponse
Informationrequest
Unformattedresponse
Data accessrequest
Data accessresponse
Deployment Diagram<<device>> Application server
<<web page server>> Microsoft IIS 7.0
Customer view layer
(smart phone)
Phone salesRep view
layer
Manager View layer
Customer view layer
(laptop/deskto)
Store sale repView layer
(POS)
Shipping rep view layer
(tablet)
Customer view layer
(tablet)
Customer view layer
(tablet)
Shipping repView layer(desktop)
CSMS customerUse cases
(business layer)
<<asp server>> Microsoft IIS 7.0 <<device>> Database server
<<dbms>> SQL Server 2013
<<schema>>CSMS domain
classes
<<protocol>>SQL
<<protocol>>ASP.NET
Activity: On the Spot Courier ServicesAt end: add Deployment diagram