Getting Your Head Around Standards CIS 373Web Standards
Getting Your Head Around Standards CIS 373—Web Standards Todd Will Getting Your Head Around Standards of 20
Standards Organizations • Where do they live? – Websites? Head offices? • What do they produce? – Written specifications • How much does it cost? – Dues – Publishing fees • Who does the work? - Volunteers - Professional CIS 373 ---Web Standards—Getting Your Head Around Standards 2
Goals • • Why standards? WOSP analysis How to choose? Types of consortia Getting involved in the development process CIS 373 ---Web Standards—Getting Your Head Around Standards 3
Our Definition of Standards “…written specifications of methods, processes, technical requirements, or other guidelines agreed upon by some segment of the user community. ” Caveat: this definition leaves a lot of gray area as to what actually is a standard. Exact definitions are not as important as being able to apply the principles we’ll discuss today. CIS 373 ---Web Standards—Getting Your Head Around Standards 4
Guiding Principles • • Your job: design, build, and maintain These activities require tradeoffs The best system is a working system >80% of system lifetime is maintenance • How do standards support these principles? CIS 373 ---Web Standards—Getting Your Head Around Standards 5
The WOSP Model • Uses the metaphor of a single-celled organism to build a framework for talking about the design and evaluation of information systems • From: – Whitworth, B. , Fjermestad, J. , and Mahinda, E. The Web of System Performance: A multi-goal model of information system performance. Communications of the ACM. CIS 373 ---Web Standards—Getting Your Head Around Standards 6
Tradeoffs in System Design • Boundary – To enable useful entry (extendibility) – To deny harmful entry (security) • Internal Structure – To accommodate external change (flexibility) – To accommodate internal change (reliability) • Effector – To maximize external effects (functionality) – To minimize internal effort (usability) • Receptor – To enable meaning exchange (connectivity) – To limit meaning exchange (privacy) CIS 373 ---Web Standards—Getting Your Head Around Standards 7
The WOSP Model functionality reliability extendibility privacy connectivity security flexibility usability CIS 373 ---Web Standards—Getting Your Head Around Standards 8
Environmental Pressures Low Threat High Threat functionality reliability extendibility privacy connectivity security flexibility reliability extendibility privacy connectivity security usability flexibility usability Emphasis on any one aspect may not improve overall performance. Rather, the total system performance adjusts to keep the system in balance. CIS 373 ---Web Standards—Getting Your Head Around Standards 9
Progress = Area Increase Low Performance High Performance functionality reliability extendibility privacy reliability extendibility connectivity security flexibility privacy connectivity usability security Combination breakthroughs are necessary in order for systems to advance. flexibility usability CIS 373 ---Web Standards—Getting Your Head Around Standards 10
WOSP Analysis: Firefox vs. IE • Given the WOSP framework, is Firefox a higher performance system than its primary competitor, Internet Explorer? • A “yes” answer requires combination breakthroughs— advances in more than one of the below areas • • Extendibility Functionality Flexibility Connectivity Security Usability Reliability Privacy CIS 373 ---Web Standards—Getting Your Head Around Standards 11
Standards’ Role in Performance • Standards support extendibility, e. g. XML based languages • Web standards may also support other performance areas, e. g. – Security: SSL – Flexibility: CSS (media), XHTML (browsers) – Usability: WCAG – Connectivity: 802. 11, TCP/IP – Privacy: P 3 P CIS 373 ---Web Standards—Getting Your Head Around Standards 12
WOSP Implication • Adopting standards can increase performance by helping you to design, build and maintain systems • Having a rationale for why to use standards, we now need guidance in how to choose standards CIS 373 ---Web Standards—Getting Your Head Around Standards 13
Kinds of Choices • Use standard or roll your own solution • Between competing standards: e. g. PHP vs. ASP. Net • Level of compliance: e. g. XHTML Transitional vs. XHTML Strict CIS 373 ---Web Standards—Getting Your Head Around Standards 14
Decision Criteria • • Maturity Stability Support Community Market share Time criticality Fit to: – Design requirements – Skill set of developers • • • Interoperability Ownership Cost Strategic Value Consequences of Non -Adoption • Capacity to Wage a Standards War CIS 373 ---Web Standards—Getting Your Head Around Standards 15
Maturity of Standards • Mature • Immature – Robust solution – Full feature set – Best practices – Error prone/buggy – Features incomplete – Sparse documentation CIS 373 ---Web Standards—Getting Your Head Around Standards 16
Stability of Standards • Stable • Unstable – Dependable feature set – Updates infrequent and announced – Backwards compatibility addressed – Frequent feature upgrades – Announcement late or non-existent – Upgrades frequently break current implementations CIS 373 ---Web Standards—Getting Your Head Around Standards 17
Support of Standards • Supported • Unsupported – Clear to whom bugs/change requests should be addressed – Bugs/change requests dealt with in a timely manner – Unclear who is maintaining the standard – Bugs may not ever be addressed CIS 373 ---Web Standards—Getting Your Head Around Standards 18
Standards Communities • Healthy • Unhealthy – At least one major forum with an active user base – Questions posted on a forum get response within one day – Rich knowledge base – Tutorials – Forums may exist but don’t have active users – Many questions are posted but may not receive answers CIS 373 ---Web Standards—Getting Your Head Around Standards 19
Standards Market Share • How widely is the standard used and/or implemented? • What impact will implementation have on your company’s market share? • Prime Example: WCAG (Web content accessibility guidelines) CIS 373 ---Web Standards—Getting Your Head Around Standards 20
Time Criticality • Time is Tight – Standards-based solution may speed implementation, even if all needed functionality is not addressed, or – Standard may be too complex to learn in a short time • Time to Spare – You may have time to roll your own solution or extend/modify an existing standard CIS 373 ---Web Standards—Getting Your Head Around Standards 21
Standards Fit • Design Criteria – Does the standard specification meet the needs of the current system design? – How difficult is it to adapt our design to the standard, or the standard to our design? • Developer Skill Set – Do our programmers already know how to use the core technology, e. g. Java, or – Do they have to learn something new from scratch? – Is there an opportunity to extend our reach? CIS 373 ---Web Standards—Getting Your Head Around Standards 22
Interoperability • Loose Coupling – Using the standard does not “lock in” your other design choices – Your solution can exchange data with solutions based on other standards • Tight Coupling – Using the standard requires you to commit to an entire “suite” of standards – It may be difficult to exchange data with other systems (this may be a benefit!) CIS 373 ---Web Standards—Getting Your Head Around Standards 23
Ownership • License agreements have HUGE implications for resulting systems • Open Source Example: the GNU General Public License, aka the GPL • Proprietary Example: Wi. Fi Certification requires membership in the Wi. Fi Alliance $15, 000/year CIS 373 ---Web Standards—Getting Your Head Around Standards 24
Cost • Implementation may come with a cost, e. g. the cost of Visual Studio. Net for developing ASP. Net solutions • Could be a free solution, such as PHP and My. SQL CIS 373 ---Web Standards—Getting Your Head Around Standards 25
Strategic Value • Technology-based strategic advantage is extremely difficult to maintain in business because technology is easy to copy • Frequently it is more advantageous to be second to market • Microsoft’s strategy: “embrace and extend” • Proprietary versions of open standards, e. g. – MSHTML, MSXML • Users enticed by added features get “locked in” to one company’s solution CIS 373 ---Web Standards—Getting Your Head Around Standards 26
Consequences of Non-Adoption • For many reasons (cost, strategy, skill base) you may decide NOT to use a given standard to implement a system • You must consider the long-term consequences of this decision – You may be able to skip a generation of technology at considerable savings – You may put yourself so far behind the competition that you can never catch up CIS 373 ---Web Standards—Getting Your Head Around Standards 27
Capacity for Standards War • A company, or group of companies develops a standard that is intentionally incompatible with that of a rival or group of rival companies • Goal: win commanding market share • Typically high stakes • Expensive and risky, BUT • Multiple solutions in the market frequently gives birth to technically superior hybrid standards in the future CIS 373 ---Web Standards—Getting Your Head Around Standards 28
Balancing the Criteria • There is no hard and fast rule for balancing these many decision criteria when choosing standards • Your job is to design, build, and maintain systems • The best system is a working system • Two recommendations: – Stay up to date in your knowledge – Don’t be afraid to dive into something new CIS 373 ---Web Standards—Getting Your Head Around Standards 29
Types of Consortia • Most standards development gets done by consortia – Standards-setting consortia • Ideally form before there is a pressing need for a given solution – Strategic consortia • Created specifically to compete with a rival company or group of companies • Be aware of this when choosing to use a standard! CIS 373 ---Web Standards—Getting Your Head Around Standards 30
Getting Involved • Volunteer – Go to IETF meetings or join Working Groups – Participate in forums • Recommend to your organization that they join a consortium • Ask for the assignment to represent your company at meetings CIS 373 ---Web Standards—Getting Your Head Around Standards 31
Conclusion • Standards are vital to technological progress • Web standards are constantly in flux and their volatility means you should be careful in their choice and use • Keep your eyes and ears open and don’t be afraid to get involved in setting new trends CIS 373 ---Web Standards—Getting Your Head Around Standards 32
For Next Time • Read Zeldman chapters 5 -6 CIS 373 ---Web Standards—Getting Your Head Around Standards 33
- Slides: 33