DOC PREVIEW
USC CSCI 578 - 26_Standards

This preview shows page 1-2-3-22-23-24-45-46-47 out of 47 pages.

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

Unformatted text preview:

StandardsObjectivesSlide 3What are standards?De jure and de facto standardsDe jure and de facto standards (cont’d)Examples of de jure and de factoGray-area StandardsAnother spectrumOpen vs. closed standardsWhy use standards?Why use standards? (cont’d)Drawbacks of standardsOverspecification vs. underspecificationTwo different kinds of underspecificationWhen to adopt a standard?When to adopt a standard? (cont’d)Slide 18Slide 19IEEE 1471IEEE 1471 (cont’d)Department of Defense Architecture FrameworkDoDAF (cont’d)Slide 24Slide 25DoDAF ExamplesDoDAF Examples (cont’d)Slide 28Slide 29Slide 30DoDAF TakeawaysThe Open Group Architecture FrameworkTOGAF Part 1: ADMTOGAF Part 2: Enterprise ContinuumTOGAF Part 3: TOGAF Resource BaseTOGAF TakeawaysRM-ODPUMLUML TakeawaysSysMLSysML DiagramsStandard UML ToolsArgoUML – a UML toolTelelogic System ArchitectRational Unified ProcessModel-Driven ArchitectureOverall TakeawaysCopyright © Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy. All rights reserved.StandardsSoftware ArchitectureLecture 262Foundations, Theory, and PracticeSoftware ArchitectureSoftware ArchitectureObjectivesConceptsWhat are standards?Why use standards?And why not? (drawbacks)Deciding when to adopt a standardPrevalent Architectural StandardsConceptual standardsNotational standardsStandard toolsProcess standards3Foundations, Theory, and PracticeSoftware ArchitectureSoftware ArchitectureObjectivesConceptsWhat are standards?Why use standards?And why not? (drawbacks)Deciding when to adopt a standardPrevalent Architectural StandardsConceptual standardsNotational standardsStandard toolsProcess standards4Foundations, Theory, and PracticeSoftware ArchitectureSoftware ArchitectureWhat are standards?Definition: a standard is a form of agreement between partiesMany kinds of standardsFor notations, tools, processes, organizations, domains There is a prevalent view that complying to standard ‘X’ ensures that a constructed system has high qualityThis is almost never strictly trueBut that doesn’t mean standards are worthless!Here, we will attempt to put standards in perspective5Foundations, Theory, and PracticeSoftware ArchitectureSoftware ArchitectureDe jure and de facto standardsSome standards are controlled by a body considered authoritativeANSI, ISO, ECMA, W3C, IETFThese standards are called de jure (“from law”)De jure standards usuallyare formally defined and documentedare evolved through a rigorous, well-known processare managed by an independent body, governmental agency, or multi-organizational coalition rather than a single individual or company6Foundations, Theory, and PracticeSoftware ArchitectureSoftware ArchitectureDe jure and de facto standards (cont’d)Some standards emerge through widespread awareness and useThese standards are called de facto (“in practice”)De facto standards usuallyare created by a single individual organization to address a particular needare adopted due to technical superiority or market dominance of the creating organizationevolve through an emergent, market-driven processare managed by the creating organization or the users themselves, rather than through a formal custodial body7Foundations, Theory, and PracticeSoftware ArchitectureSoftware ArchitectureExamples of de jure and de factoDe jure standardsUML (managed by OMG)CORBA (also managed by OMG)HTTP protocol (managed by IETF)De facto standardsPDF format (managed by Adobe)May become de jure through ISOWindows (managed by Microsoft)There is a substantial gray area between these two8Foundations, Theory, and PracticeSoftware ArchitectureSoftware ArchitectureGray-area StandardsHTMLOfficially standardized by W3C, indicating de jureFlavors and browser-specific extensions developed by Microsoft, Netscape, and others, creating de facto variantsNone of these has power to force users to use standardJavaScriptDeveloped by Netscape; copied (as JScript) by MicrosoftAfter substantial adoption and possibly under threat of forking/splintering, Netscape submits it to ECMANow standardized as ECMAScript (de jure)JavaScript and variants continue to be developed as compatible extensions of ECMAScript9Foundations, Theory, and PracticeSoftware ArchitectureSoftware ArchitectureAnother spectrumStandards (whether de jure or de facto) can be:OpenAllow public participation in the standardization processAnyone can submit ideas or changes for reviewClosed (a.k.a. proprietary)Only the custodians of a standard can participate in its evolution10Foundations, Theory, and PracticeSoftware ArchitectureSoftware ArchitectureOpen vs. closed standardsAnother spectrum with a gray areaSome standards bodies have high barriers to entry (e.g., steep membership fees, vote of existing membership)Some standards (e.g., Java) have aspects of bothSun Microsystems is effectively in control of Java as a de facto standardThere is an open “community process” by which external parties can participate in a limited way11Foundations, Theory, and PracticeSoftware ArchitectureSoftware ArchitectureWhy use standards?Standards are an excellent way to create and exploit network effectsA network effect exists if the value of participation increases as the number of users of the standard increasesOther network effects:TCP/IP, HTTP & HTML, UML… versus 12Foundations, Theory, and PracticeSoftware ArchitectureSoftware ArchitectureWhy use standards? (cont’d)To ensure interoperability between products developed by different organizationsUsually in the interest of fostering a network effectTo carry hard-won engineering knowledge from one project to anotherTo take advantage of hard-won engineering knowledge created by othersAs an effort to attract tool vendorsTo create economies of scale in toolsTo attempt to control the standard’s evolution in your favor13Foundations, Theory, and PracticeSoftware ArchitectureSoftware ArchitectureDrawbacks of standardsLimits your agilityRemember that doing ‘good’ architecture-based development means identifying what is important in your projectStandards often attempt to apply the same techniques to a too-broad variety of situationsThe most widely adopted standards are often the most general14Foundations, Theory, and PracticeSoftware


View Full Document

USC CSCI 578 - 26_Standards

Download 26_Standards
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 26_Standards 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 26_Standards 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?