enterprise architecture group

36
Internet Sellouts Final Presentation Enterprise Architecture Group

Upload: nirmala-last

Post on 08-Dec-2014

714 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Enterprise Architecture Group

Internet Sellouts

Final Presentation

Enterprise Architecture Group

Page 2: Enterprise Architecture Group

Internet Sellouts

Presentation Overview• Domain Definition, Commonality

Analysis• Architecture Variability Analysis,

Example Application• Enterprise Architecture• Reference Applications• What Internet Sellouts LLC is NOT

Page 3: Enterprise Architecture Group

Domain Definition

• Domain: Online Shopping Cart– A set of reusable components and a basic framework in

which to build online shopping carts• Framework support product family applications that have a

storefront for purchasing goods/services over the Internet• Framework models Buyers, Managers, Authentication,

Catalogs, and Orders• Limited Domain Scope: Not B-to-B, Not Do-It-All

Business Systems

Page 4: Enterprise Architecture Group

Commonality

Generic Architecture – Identification of set of requirements in common

• Identification of actors - Buyer and Manager• Browse a catalog• Fill a shopping cart by selecting items from catalog• Manages shopping cart – update quantity, subtotal prices• Buyers check out – billing and shipping information• Buyers confirm/track orders• Managers CRUD catalogs• Coded Commonality for Requirement and Reusable Asset

Tracking

Page 5: Enterprise Architecture Group

Commonality

Traceable and Coded Requirements

• C1 Buyer credential verification, authentication

• C2 Buyer searches/browses catalog

• C3 Buyer builds shopping cart

• C4 Buyer manages the shopping cart, and pricing

• C5 Buyer checks out – payment, shipping and receipt

• C6 Buyer tracks order

• C7 Catalog management

Page 6: Enterprise Architecture Group

Variability

• Clients: browser, Java App, Windows App

• Catalog CRUD: html, command-line, real-time, batch

• Ordering: carrier choices, expediting options, payment options

• Authentication: username/PW, App access list, group membership

Page 7: Enterprise Architecture Group

Domain Architecture

Page 8: Enterprise Architecture Group

Domain Architecture

• Buyer Client App System• Buyer Controller App System• Client Mgmt Comp System• Catalog Mgmt Comp System• Order Mgmt Comp System• Authorization Mgmt Comp System

Page 9: Enterprise Architecture Group

Enterprise Use Cases

• Buy a product• Track an order• Manage catalogs

Page 10: Enterprise Architecture Group

Buy a Product

• The buyer requests access

• If access is restricted, the buyer is authenticated

• The buyer selects items to buy

• The buyer pays for the items

• The system gives the buyer a receipt

Page 11: Enterprise Architecture Group

Track an Order

• The buyer requests access

• The buyer provides a tracking number

• The system provides the status of the order

Page 12: Enterprise Architecture Group

Manage Catalogs

• Create a catalog use case

• Update a catalog use case

• Delete a catalog use case

Page 13: Enterprise Architecture Group

Client Mgmt Use Cases

• Authenticate user

• Get catalog selection

• Get item selections

• Get shipping information

• Get confirmation

• Offer receipt

Page 14: Enterprise Architecture Group

Client Mgmt Facade

Page 15: Enterprise Architecture Group

Catalog Mgmt Use Cases

• Select catalog

• Add catalog

• Update catalog

• Drop catalog

• Add Items

• Update Items

• Drop Items

Page 16: Enterprise Architecture Group

Catalog Mgmt Facade

Page 17: Enterprise Architecture Group

Order Mgmt Use Cases

• Price order

• Place order

• Get order status

• Report orders

Page 18: Enterprise Architecture Group

Order Mgmt Facade

Page 19: Enterprise Architecture Group

Authorization Mgmt Use Cases

• Confirm member

• Add member

• Update member

• Drop member

Page 20: Enterprise Architecture Group

Authorization Mgmt Facade

Page 21: Enterprise Architecture Group

Reference Applications

Page 22: Enterprise Architecture Group

Prototypes

• An online financing application.

• An online merchandise selling application.

• An online office supply ordering system.

Page 23: Enterprise Architecture Group

An Online Financing Application

• This system allows clients to select the type of financing product they would like to apply for on a website for mortgage loans, car loans and other types of personal loans.

•  DIAE Component on Server – 3 components– User Authentication

– Product/Service Offering Selections (Inventory)

– A Shopping Cart

Page 24: Enterprise Architecture Group

An Online Financing Application (cont..)

• DIAE Component on the Client Side – Package client’s input parameters and

communicate with server objects.

Page 25: Enterprise Architecture Group

User:Component

Authenticate(UserID, Password)

Session ID

Client Inventory Cart

Browse()

Select()

ProductID

AddtoCart(ProductID)

ModifyItems()

CheckOut()

Page 26: Enterprise Architecture Group

An online merchandise selling application

• Server side DIAE components – Browse Catalog– Shopping Cart– Authenticate Admin user

• Client side components – Admin Interface

• Order Status Manager Interface • Catalog Manager Interface

Page 27: Enterprise Architecture Group
Page 28: Enterprise Architecture Group

An online office supply ordering system

• Client DIAE Components – Client interface (1…n distinct concurrently

running entities). • Interact with user.

– Shipping interface (1 distinct concurrently running instance)

• Add, edit, and delete contents of the inventory.• Read the checked out orders from the database.• Once the order has been filled, delete the entry.

Page 29: Enterprise Architecture Group

An online office supply ordering system• Server DIAE Components

– Session management• Authenticate user login.• Match session id to user credentials.• Determine valid session ids.

– Inventory Browser • Provide a list of office supplies available upon valid request.• Filter the list of office supplies based upon search criteria.

– Cart Manager• Record the item selections for a specific session.• At checkout, validate session selections against the session’s• user credentials.• At checkout, request office location where to ship the requested supplies.• Store the result of checkout in database.

– Relational Database server (provided as COT software)• Store data for the other 3 DIAE server components.

Page 30: Enterprise Architecture Group

Identifying the Domain

Page 31: Enterprise Architecture Group

What is the domain?

• By now the domain should be relatively clear.– Online, client server– Searchable inventory– Select items to receive– Selected items are validated based upon

application specific logic.

• Remember the reference applications.

Page 32: Enterprise Architecture Group

What is NOT in the domain?

• Obviously, things that do not meet the criteria previously described– Video games– Word processors– Online message board

Page 33: Enterprise Architecture Group

More subtly…

• Real time vending services.– For example:

• Medical supply retrieval.

• Juke Box / DJ services

– Reasons:• Service to fulfill requested order is not in

architecture.

• Real time delivery of order not guaranteed.

Page 34: Enterprise Architecture Group

More subtly (con’t)…

• Inventory Management systems.– For example:

• Stock management for retail store.

• Factory inventory control.

– Reasons:• Architecture is designed for browsing the inventory,

not managing it.

• Administrative interface is not well defined enough to provide enough reuse in these areas.

Page 35: Enterprise Architecture Group

More subtly (con’t)…

• Free Text Data Repository / Knowledge Base– For example:

• Internet search engine’s cache

• MSDN help

– Reasons:• Search of inventory is not optimized for free text searches.

– Some of these could be in the domain.• Phone book – Structured data fits architecture.

Page 36: Enterprise Architecture Group

Adding to the domain.

• Application domains close to, but not in, the domain can be added.– The current architecture can be extended.– Will incur additional cost to the customer to

properly integrate into the architecture.• Architect and create new reuse assets

• Low reuse on these applications