DOC PREVIEW
USC CSCI 578 - DSSE

This preview shows page 1-2-3-4-5-34-35-36-37-38-69-70-71-72-73 out of 73 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 73 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 73 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 73 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 73 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 73 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 73 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 73 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 73 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 73 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 73 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 73 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 73 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 73 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 73 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 73 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 73 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Domain-Specific Software Architecture and Product LinesObjectivesSlide 3Domain-Specific Software EngineeringExamples of DomainsTraditional Software EngineeringArchitecture-Based Software EngineeringSlide 8Three Key Factors of DSSEThree Key FactorsSlide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Becoming More ConcreteDomain ModelSlide 20Slide 21Slide 22Slide 23Slide 24(Partial) Domain DictionaryInfo Model: Context Info DiagramInfo Model: Entity-Relationship DiagramInfo Model: Object DiagramFeature Model: Feature Relationship DiagramFeature Model: Use Case DiagramFeature Model: Representation DiagramOperational Model: Data Flow DiagramOperational Model: Control Flow DiagramOperational Model: State Transition DiagramReference RequirementsDomain-Specific Software ArchitectureReference ArchitectureDifferent Kinds of Reference ArchitectureExample Reference ArchitectureSlide 40Slide 41Product LinesDomains vs. Product LinesBusiness vs. Engineering Product LinesA Business or Engineering Product Line?Business Motivation for Product LinesSlide 47Slide 48Capturing Product Line ArchitecturesA Product-Line ArchitectureA Lunar Lander Product LineProduct Component TableGroup Components into FeaturesReconstitute Products from FeaturesModeling Product Line ArchitecturesSlide 56SelectionProduct Lines for EvolutionSlide 59Product Lines for ‘What-If’ AnalysisImplementation IssuesImplementation Issues (cont’d)Unifying Products with Different HeritageArchitectural Styles, DSSAs, Product LinesFamilies of Styles: Batch-Sequential vs. Pipe-and-FilterSlide 66KoalaLunar Lander in KoalaLunar Lander PL in KoalaSoftware Defined RadiosSDR in xADL 2.0Slide 72SDRs in xADL 2.0Copyright © Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy. All rights reserved.Domain-Specific Software Architecture and Product LinesSoftware ArchitectureFoundations, Theory, and PracticeSoftware ArchitectureSoftware Architecture2ObjectivesConceptsWhat is domain-specific software engineering (DSSE)The “Three Lampposts” of DSSE: Domain, Business, and TechnologyDomain Specific Software ArchitecturesProduct LinesRelationship between DSSAs, Product Lines, and Architectural StylesExamples of DSSE at workFoundations, Theory, and PracticeSoftware ArchitectureSoftware Architecture3ObjectivesConceptsWhat is domain-specific software engineering (DSSE)The Three Key Factors of DSSE: Domain, Business, and TechnologyDomain Specific Software ArchitecturesProduct LinesRelationship between DSSAs, Product Lines, and Architectural StylesExamples of DSSE at workFoundations, Theory, and PracticeSoftware ArchitectureSoftware Architecture4Domain-Specific Software EngineeringThe traditional view of software engineering shows us how to come up with solutions for problems de novoBut starting from scratch every time is infeasibleThis will involve re-inventing many wheelsOnce we have built a number of systems that do similar things, we gain critical knowledge that lets us exploit common solutions to common problemsIn theory, we can simply build “the difference” between our new target system and systems that have come beforeFoundations, Theory, and PracticeSoftware ArchitectureSoftware Architecture5Examples of DomainsCompilers for programming languagesConsumer electronicsElectronic commerce system/Web storesVideo gameBusiness applicationsBasic/Standard/“Pro”We can subdivide, too:Avionics systemsBoeing JetsBoeing 747-400Software Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; (C) 2008 John Wiley & Sons, Inc. Reprinted with permission.Foundations, Theory, and PracticeSoftware ArchitectureSoftware Architecture6Traditional Software EngineeringOne particular problem can be solved in innumerable waysSoftware Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; (C) 2008 John Wiley & Sons, Inc. Reprinted with permission.Foundations, Theory, and PracticeSoftware ArchitectureSoftware Architecture7Architecture-Based Software EngineeringGiven a single problem, we select from a handful of potential architectural styles or architectures, and go from these into specific implementationsSoftware Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; (C) 2008 John Wiley & Sons, Inc. Reprinted with permission.Foundations, Theory, and PracticeSoftware ArchitectureSoftware Architecture8Domain-Specific Software EngineeringWe map regions of the problem space (domains) into domain-specific software architectures (DSSAs)These are specialized into application-specific architecturesThese are implementedSoftware Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; (C) 2008 John Wiley & Sons, Inc. Reprinted with permission.Foundations, Theory, and PracticeSoftware ArchitectureSoftware Architecture9Three Key Factors of DSSEDomainMust have a domain to constrain the problem space and focus developmentTechnologyMust have a variety of technological solutions—tools, patterns, architectures & styles, legacy systems—to bring to bear on a domainBusinessBusiness goals motivate the use of DSSEMinimizing costs: reuse assets when possibleMaximize market: develop many related applications for different kinds of end usersFoundations, Theory, and PracticeSoftware ArchitectureSoftware Architecture10Domain BusinessTechnologyThree Key FactorsDomainMust have a domainto constrain the problem space and focus developmentFoundations, Theory, and PracticeSoftware ArchitectureSoftware Architecture11Domain BusinessTechnologyThree Key FactorsTechnologyMust have a variety of technological solutions—tools, patterns, architectures & styles, legacy systems—to bring to bear on a domainFoundations, Theory, and PracticeSoftware ArchitectureSoftware Architecture12Domain BusinessTechnologyThree Key FactorsBusinessBusiness goals motivate the use of DSSEMinimizing costs: reuse assetswhen possibleMaximize market: develop many related applications for different kinds of end usersFoundations, Theory, and PracticeSoftware ArchitectureSoftware Architecture13Domain BusinessTechnologyThree Key FactorsDomain + Business“Corporate CoreCompetencies”Domain expertiseaugmented bybusinessacumen andknowledge ofthe


View Full Document

USC CSCI 578 - DSSE

Download DSSE
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 DSSE 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 DSSE 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?