DOC PREVIEW
AUBURN COMP 7700 - Architectures and Frameworks

This preview shows page 1-2-3-25-26-27 out of 27 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 27 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 27 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 27 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 27 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 27 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 27 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 27 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Internet-based Application Development -- copyright (c) 1998-2001 by Eric J. Braude 11/30/2003-- Components -- page C.1Chapter 14Architectures and FrameworksProcess Phases Discussed in This ChapterRequirementsAnalysisDesignImplementationArchitectureFramework Detailed DesignxKey: = secondary emphasisx = main emphasisAdapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.Learning Goals for This Chapterq … the goals of software architectureq … the meaning of “frameworks”q … express a software architectureq … show a full class modelq … show a full state model q … show a component modelq … build frameworksq … complete a detailed design Be able to …Understand …Adapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.An Architecture for a Video Store ApplicationRentalsCustomersVideosAdapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.Internet-based Application Development -- copyright (c) 1998-2001 by Eric J. Braude 11/30/2003-- Components -- page C.2A Sequence for Obtaining The Class Model1. Create domain classes-- from requirements analysis3. Create remaining design classes-- to complete the class model-- possibly use frameworkMoregeneral2. Create architecture-- typically use framework0. Framework (some or all pre-existing)Adapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.TargetApplicationClass model“with objects of these classes ...”e.g., with Engagement … classesState model“reacting to these events ...”e.g., when foreign character entersUse-case model“Do this ...”e.g.*, engage foreign characterData Flow model“in this way ...”e.g., character scores flow from … to …To express requirements, architecture & detailed designModels* Video game exampleAdapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.TargetApplicationClass modelState modelUse-case model:Data flow modelUse caseScenariosBusiness use caseelaborated by ...SequencediagramRole of Use Case ModelsTargetApplicationClass modelState modelUse-case modelData flow modelclassmethodspackageConsistsof ...Jacobson et alRole of Class ModelsInternet-based Application Development -- copyright (c) 1998-2001 by Eric J. Braude 11/30/2003-- Components -- page C.3Role of Component ModelTargetApplicationClass modelState modelUse-case modelData Flow modelProcessing elementSub-processing elementData typeorganizedby ...Jacobson et al1Data storeData Flow Diagram: Explanation of SymbolsAccount #& depositbalancequeryUseraccountdatabaseaccountdataGet depositCreate accountsummaryValidatedepositPrinterInputOutputProcessingelementData typeDirectionof data flowData store…...Adapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.Partial Data Flow Diagram for ATM Applicationaccount #& depositbalancequeryaccount #& depositaccount #UserMakeinquiryaccountdatabasedeposittransactionaccountdataGet depositGet inquiryValidateinquiryDo deposittransactionCreate accountsummaryValidate depositerrorerrorPrintermemberbanksbank nameDisplay accountaccount #accountdataaccountdisplayAdapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.screentemplateDetailed Data Flow Diagram for a Banking ApplicationAccount.getPass-word()Account.verifyPass-word()Expand details……..Pass-wordCustomerbalanceunacceptableATM usersDeposit-screen.display()Account.getDeposit()statuslocallogbalanceUserCustomer.getDetails()CustomerAdapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.Internet-based Application Development -- copyright (c) 1998-2001 by Eric J. Braude 11/30/2003-- Components -- page C.4Partial Encounter Video Game State ModelSetting up PreparingWaitingComplete setupForeign character enters area EngagingPlayer clicks qualities menuAdapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.Player moves to adjacent area[foreign character absent][foreign character present]Using Conditions in State-Transition DiagramsEngagingWaitingeventconditionconditionstatestateAdapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.Player moves to adjacent areaSettingqualitiesEncounterState-Transition DiagramSetting upEngagingWaitingPlayer completes setupPlayer dismisses report windowReportingEncounter completedPlayer dismisses set qualities widowPlayer requests statusPlayer requests to set qualitiesForeign character enters area [foreign character absent][foreign character present]Player quitsForeign character enters area Adapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.Role of State ModelsTargetApplicationClass modelState model: “reacting to these events”Use-case modelComponent modelStatesTransitionsSubstatesdecomposeinto ...Jacobson et alAdapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.Internet-based Application Development -- copyright (c) 1998-2001 by Eric J. Braude 11/30/2003-- Components -- page C.5Design Goal At Work: à Correctness/Modularity ßWe want to decompose designs into modules, each well-knit, and depending on few others.Adapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.Cohesion and Coupling12 3 45 6High cohesion Low couplingHigh couplingBridgecomponentcomponentcomponentbrbSteeltrussAdapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.Adapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.Architecture and Modularization of Encounter Video GameEncounterCharactersEncounterGameEncounterCast«facade»EncounterGame«facade»EncounterEnvironmentEncounterEnvironment«facade»Adapted from Software Design: From Programming to Architecture by Eric J. Braude (Wiley 2003), with permission.Internet-based Application Development -- copyright (c) 1998-2001 by Eric J. Braude 11/30/2003-- Components -- page C.61. Develop a mental model of the application.o as if it were a small applicatione.g.,


View Full Document

AUBURN COMP 7700 - Architectures and Frameworks

Download Architectures and Frameworks
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Architectures and Frameworks and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Architectures and Frameworks 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?