<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ISO Archive - CEOsBay</title>
	<atom:link href="https://ceosbay.com/tag/iso/feed/" rel="self" type="application/rss+xml" />
	<link>https://ceosbay.com/tag/iso/</link>
	<description>It&#039;s all about Tech</description>
	<lastBuildDate>Sun, 16 Apr 2023 07:13:33 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://i0.wp.com/ceosbay.com/wp-content/uploads/2022/11/image.jpg?fit=32%2C32&#038;ssl=1</url>
	<title>ISO Archive - CEOsBay</title>
	<link>https://ceosbay.com/tag/iso/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">211828771</site>	<item>
		<title>ISO-Norm 25010 &#8211; Leitfaden für herausragende Softwarequalität und vertrauenswürdige Systeme</title>
		<link>https://ceosbay.com/2023/04/07/erklaerung-iso-norm-25010/</link>
					<comments>https://ceosbay.com/2023/04/07/erklaerung-iso-norm-25010/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Fri, 07 Apr 2023 20:34:00 +0000</pubDate>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Betriebssystem]]></category>
		<category><![CDATA[Big-Data]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Datenbanken]]></category>
		<category><![CDATA[Datenschutz]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[Künstliche Intelligenz]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[MacOS]]></category>
		<category><![CDATA[Netzwerk]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Sicherheit]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[25010]]></category>
		<category><![CDATA[Anerkannt]]></category>
		<category><![CDATA[Anpassungsfähigkeit]]></category>
		<category><![CDATA[Attraktivität]]></category>
		<category><![CDATA[Austauschbarkeit]]></category>
		<category><![CDATA[Barrierefreiheit]]></category>
		<category><![CDATA[Bewertung]]></category>
		<category><![CDATA[Effizienz]]></category>
		<category><![CDATA[Erlernbarkeit]]></category>
		<category><![CDATA[Fazit]]></category>
		<category><![CDATA[Fehler]]></category>
		<category><![CDATA[Fehlertoleranz]]></category>
		<category><![CDATA[IEC]]></category>
		<category><![CDATA[Installierbarkeit]]></category>
		<category><![CDATA[Integrität]]></category>
		<category><![CDATA[International]]></category>
		<category><![CDATA[Interoperabilität]]></category>
		<category><![CDATA[ISO]]></category>
		<category><![CDATA[Koexistenz]]></category>
		<category><![CDATA[Lesitung]]></category>
		<category><![CDATA[Modifizierbarkeit]]></category>
		<category><![CDATA[Modularität]]></category>
		<category><![CDATA[Nichtabstreitbarkeit]]></category>
		<category><![CDATA[Norm]]></category>
		<category><![CDATA[Normung]]></category>
		<category><![CDATA[Ordnungsmäßigkeit]]></category>
		<category><![CDATA[Portabilität]]></category>
		<category><![CDATA[Qualitätsmerkmale]]></category>
		<category><![CDATA[Quality]]></category>
		<category><![CDATA[Rechenschaftspflicht]]></category>
		<category><![CDATA[Ressourcen]]></category>
		<category><![CDATA[Ressourcennutzung]]></category>
		<category><![CDATA[Richtigkeit]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[System]]></category>
		<category><![CDATA[Systems]]></category>
		<category><![CDATA[Testbarkeit]]></category>
		<category><![CDATA[Vertrauen]]></category>
		<category><![CDATA[Wiederherstellung]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1052</guid>

					<description><![CDATA[<p>Die ISO-Norm 25010 ist Teil der ISO/IEC 25000-Serie, auch bekannt als Systems and Software Quality Requirements and Evaluation (SQuaRE). Diese Normenserie befasst sich mit der Bewertung und Verbesserung von Softwarequalität und Systemqualität. ISO 25010 beschreibt &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/04/07/erklaerung-iso-norm-25010/">ISO-Norm 25010 &#8211; Leitfaden für herausragende Softwarequalität und vertrauenswürdige Systeme</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Die ISO-Norm 25010 ist Teil der ISO/IEC 25000-Serie, auch bekannt als Systems and Software Quality Requirements and Evaluation (SQuaRE). Diese Normenserie befasst sich mit der Bewertung und Verbesserung von Softwarequalität und Systemqualität. ISO 25010 beschreibt die System- und Softwarequalitätsmodelle, die man zur Identifizierung und Bewertung von Qualitätsmerkmalen verwendet.</p>



<h3 class="wp-block-heading">Kurze Zeitreise</h3>



<p>Die ISO-Norm 25010 ist aus dem Bedürfnis heraus entstanden, ein international anerkanntes und einheitliches Rahmenwerk für die Bewertung und Verbesserung von Software- und Systemqualität bereitzustellen. Die Geschichte von ISO 25010 ist eng mit der Entwicklung der ISO/IEC 25000-Serie (SQuaRE) verbunden, die sich aus früheren Standards und Modellen zur Softwarequalität entwickelt hat.</p>



<h4 class="wp-block-heading">Entstehung</h4>



<p>Und wenn man es genau nimmt, geht die Geschichte noch weitaus früher los. Und zwar mit McCall&#8217;s Quality Model aus dem Jahr 1977. Dieses Modell definierte 11 Qualitätsfaktoren, wie Zuverlässigkeit, Effizienz und Wartbarkeit, die die Softwarequalität beeinflussen bzw. mit Boehm&#8217;s Quality Model aus dem Jahr 1978. Wobei letzteres Modell sieben Hauptqualitätsmerkmale vorschlug, die die Softwarequalität beeinflussen. Dabei beispielsweise die Portabilität, Zuverlässigkeit und Verständlichkeit.</p>



<p>Die Internationale Organisation für Normung (ISO) und die Internationale Elektrotechnische Kommission (IEC) entwickelten gemeinsam den ISO/IEC 9126-Standard, der man 1991 veröffentlichte. Dieser Standard führte ein hierarchisches Qualitätsmodell ein, dass aus sechs Hauptqualitätsmerkmalen (Funktionalität, Zuverlässigkeit, Benutzbarkeit, Effizienz, Wartbarkeit und Übertragbarkeit) und mehreren Unterkriterien bestand. ISO/IEC 9126 legte den Grundstein für die Entwicklung der ISO/IEC 25000-Serie und ISO 25010.</p>



<h4 class="wp-block-heading">ISO/IEC 25000-Serie</h4>



<p>Die ISO/IEC 25000-Serie, auch als Systems and Software Quality Requirements and Evaluation (SQuaRE) bekannt, hat man entwickelt, um die verschiedenen Standards und Modelle zur Softwarequalität zu konsolidieren und eine umfassende, international anerkannte Normenserie für Software- und Systemqualität zu schaffen. Die Entwicklung von SQuaRE begann im Jahr 2001 und beinhaltete die Überarbeitung und Erweiterung des ISO/IEC 9126-Standards.</p>



<p>Folglich fand die Veröffentlichung von ISO 25010 im Jahr 2011 statt und ersetzte den früheren ISO/IEC 9126-Standard. Es führte zwei Qualitätsmodelle ein. Das Produktqualitätsmodell und das Qualitäts-in-Use-Modell. Die Hauptqualitätsmerkmale des Produktqualitätsmodells hat man von sechs auf acht erweitert, und die Unterkriterien hat man entsprechend aktualisiert. Sicherheit war nunmehr ein eigenständiges Hauptqualitätsmerkmal und die bestehenden Hauptqualitätsmerkmale hat man weiter verfeinert bzw. erweitert, um die Qualität von Software- und Softwaresystemen umfassender zu erfassen.</p>



<p>Die Entstehung von ISO 25010 ist das Ergebnis von jahrzehntelanger Forschung, Entwicklung und Konsolidierung von Best Practices und Standards zur Bewertung und Verbesserung der Software- und Systemqualität.</p>



<p>Sei der Veröffentlichung, hat ISO 25010 als zuverlässiger und anerkannter Standard für die Beurteilung der Softwarequalität gedient und den Entwicklern, Testern und Projektmanagern dabei geholfen, qualitativ hochwertige Produkte zu entwickeln und bereitzustellen.</p>



<h3 class="wp-block-heading">Die dynamische Norm</h3>



<p>Die ISO/IEC 25000-Serie und ISO 25010 sind nicht statisch. Man überprüft und aktualisiert die Inhalte kontinuierlich, um sich den stetig ändernden Anforderungen der Software- und Systementwicklung anzupassen. Die <a href="https://www.iso.org/home.html" target="_blank" rel="noreferrer noopener">International Organization for Standardization</a> (<a href="https://www.iso.org/home.html" target="_blank" rel="noreferrer noopener">ISO</a>) und die <a href="https://www.iec.ch/homepage" target="_blank" rel="noreferrer noopener">International Electrotechnical Commission</a> (<a href="https://www.iec.ch/homepage" target="_blank" rel="noreferrer noopener">IEC</a>) arbeiten gemeinsam daran, die Standards auf dem neuesten Stand zu halten und sie an neue Technologien, Methoden und Best Practices anzupassen.</p>



<p>Es ist wichtig zu beachten, dass man die ISO-Normen in einem Konsensprozess entwickelt, bei dem Experten aus verschiedenen Ländern und Organisationen zusammenarbeiten. Dies stellt sicher, dass die Normen umfassend und von hoher Qualität sind und die Bedürfnisse der verschiedenen Interessengruppen berücksichtigen.</p>



<h3 class="wp-block-heading">Qualitätsmodelle</h3>



<p>ISO 25010 bietet zwei Qualitätsmodelle: das Produktqualitätsmodell und das Qualitäts-in-Use-Modell. Das Produktqualitätsmodell bezieht sich auf die Qualität des Softwareprodukts selbst, während das Qualitäts-in-Use-Modell die Qualität aus der Perspektive des Endbenutzers bewertet.</p>



<h4 class="wp-block-heading">Produktqualitätsmodell</h4>



<p>Das Produktqualitätsmodell besteht aus acht Hauptqualitätsmerkmalen, die wiederum in mehrere Unterkriterien unterteilt sind. Die Hauptqualitätsmerkmale sind:</p>



<h5 class="wp-block-heading">Funktionalität</h5>



<p>Die Fähigkeit der Software, die geforderten Funktionen zu erfüllen, mit den Unterkriterien:</p>



<ul class="wp-block-list">
<li>Angemessenheit</li>



<li>Richtigkeit</li>



<li>Ordnungsmäßigkeit</li>



<li>Interoperabilität</li>



<li>Sicherheit</li>
</ul>



<h5 class="wp-block-heading">Leistungsfähigkeit</h5>



<p>Die Fähigkeit der Software, in Bezug auf Leistung, Verarbeitungsgeschwindigkeit und Reaktionszeit auf Anforderungen zu reagieren. Mit den Unterkriterien:</p>



<ul class="wp-block-list">
<li>Zeitverhalten</li>



<li>Ressourcenausnutzung</li>
</ul>



<h5 class="wp-block-heading">Kompatibilität</h5>



<p>Die Fähigkeit der Software, in einer gemeinsamen Umgebung mit anderen Systemen oder Softwareprodukten zu interagieren. Mit den Unterkriterien:</p>



<ul class="wp-block-list">
<li>Koexistenz</li>



<li>Interoperabilität</li>
</ul>



<h5 class="wp-block-heading">Benutzbarkeit</h5>



<p>Die Fähigkeit der Software, von Benutzern effizient und zufriedenstellend genutzt zu werden. Mit den Unterkriterien:</p>



<ul class="wp-block-list">
<li>Verständlichkeit</li>



<li>Erlernbarkeit</li>



<li>Bedienbarkeit</li>



<li>Attraktivität</li>



<li>Barrierefreiheit</li>
</ul>



<h5 class="wp-block-heading">Zuverlässigkeit</h5>



<p>Die Fähigkeit der Software, korrekt und zuverlässig zu funktionieren. Mit den Unterkriterien:</p>



<ul class="wp-block-list">
<li>Reife</li>



<li>Fehlertoleranz</li>



<li>Wiederherstellbarkeit</li>
</ul>



<h5 class="wp-block-heading">Sicherheit</h5>



<p>Die Fähigkeit der Software, Vertraulichkeit, Integrität und Verfügbarkeit von Daten und Ressourcen zu gewährleisten. Mit den Unterkriterien:</p>



<ul class="wp-block-list">
<li>Vertraulichkeit</li>



<li>Integrität</li>



<li>Nichtabstreitbarkeit</li>



<li>Rechenschaftspflicht</li>



<li>Authentizität</li>
</ul>



<h5 class="wp-block-heading">Wartbarkeit</h5>



<p>Die Fähigkeit der Software für Modifikationen und Verbesserbarkeit. Mit den Unterkriterien:</p>



<ul class="wp-block-list">
<li>Modularität</li>



<li>Wiederverwendbarkeit</li>



<li>Analysierbarkeit</li>



<li>Modifizierbarkeit</li>



<li>Testbarkeit (Hier möchte ich gerne auf <a href="https://ceosbay.com/2023/03/13/erklaerung-test-driven-development/" target="_blank" rel="noreferrer noopener">TDD</a> und <a href="https://ceosbay.com/2023/03/12/erklaerung-behavior-driven-development/" target="_blank" rel="noreferrer noopener">BDD</a> verweisen)</li>
</ul>



<h5 class="wp-block-heading">Übertragbarkeit</h5>



<p>Die Fähigkeit der Software, von einer Umgebung in eine andere übertragen zu können. Mit den Unterkriterien:</p>



<ul class="wp-block-list">
<li>Anpassungsfähigkeit</li>



<li>Installierbarkeit</li>



<li>Konformität</li>



<li>Austauschbarkeit</li>
</ul>



<h4 class="wp-block-heading">Qualitäts-in-Use-Modell</h4>



<p>Das Qualitäts-in-Use-Modell beschreibt die Qualität aus der Perspektive des Endbenutzers und besteht aus fünf Hauptqualitätsmerkmalen:</p>



<h5 class="wp-block-heading">Effektivität</h5>



<p>Die Fähigkeit der Software, Benutzern dabei zu helfen, ihre Ziele präzise und vollständig zu erreichen.</p>



<h5 class="wp-block-heading">Effizienz</h5>



<p>Die Fähigkeit der Software, Benutzern zu ermöglichen, ihre Ziele mit angemessenen Ressourcen und minimalem Aufwand zu erreichen.</p>



<h5 class="wp-block-heading">Zufriedenheit</h5>



<p>Das Ausmaß, in dem die Software die Anforderungen und Erwartungen der Benutzer erfüllt.</p>



<p>Freiheit von Risiken</p>



<p>Die Fähigkeit der Software, potenzielle Schäden für Benutzer, Geschäftsprozesse oder die Umwelt zu minimieren.</p>



<h5 class="wp-block-heading">Kontextabdeckung</h5>



<p>Die Fähigkeit der Software, in verschiedenen Benutzer-, Organisations- und Umweltkontexten einsetzbar zu sein.</p>



<h3 class="wp-block-heading">Fazit</h3>



<p>Die ISO-Norm 25010 ist ein wertvolles Instrument zur Bewertung und Verbesserung der Qualität von Softwareprodukten und -systemen. Die Qualitätsmerkmale und Unterkriterien des Produktqualitätsmodells und des Qualitäts-in-Use-Modells ermöglichen eine umfassende Analyse und Bewertung verschiedener Aspekte der Softwarequalität. Softwareentwickler und Projektmanager können diese Modelle nutzen, um Qualitätsanforderungen zu definieren, Probleme zu identifizieren und Verbesserungen im Entwicklungsprozess umzusetzen. Dadurch entstehen qualitativ hochwertige Softwareprodukte, die den Bedürfnissen der Endbenutzer gerecht sind und zu einer höheren Zufriedenheit und besserer Performance beitragen.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/04/07/erklaerung-iso-norm-25010/">ISO-Norm 25010 &#8211; Leitfaden für herausragende Softwarequalität und vertrauenswürdige Systeme</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/04/07/erklaerung-iso-norm-25010/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1052</post-id>	</item>
		<item>
		<title>JSON &#8211; Schönheit der einfachen Datenübertragung</title>
		<link>https://ceosbay.com/2023/03/14/erklaerung-json/</link>
					<comments>https://ceosbay.com/2023/03/14/erklaerung-json/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Tue, 14 Mar 2023 18:23:00 +0000</pubDate>
				<category><![CDATA[Cloud]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[8]]></category>
		<category><![CDATA[Anwendung]]></category>
		<category><![CDATA[Anwendungen]]></category>
		<category><![CDATA[Bibliotheken]]></category>
		<category><![CDATA[Daten]]></category>
		<category><![CDATA[Echtzeit]]></category>
		<category><![CDATA[Gründer]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[ISO]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[JSON]]></category>
		<category><![CDATA[Notation]]></category>
		<category><![CDATA[Objekt]]></category>
		<category><![CDATA[Objekte]]></category>
		<category><![CDATA[Parser]]></category>
		<category><![CDATA[Socket]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[xml]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1071</guid>

					<description><![CDATA[<p>JSON JavaScript Object Notation, ist ein offenes Standard-Datei- und Datenaustauschformat, dass menschenlesbaren Text zur Speicherung und Übertragung (Serialisierung) von Datenobjekten, einschließlich dem von Webanwendungen mit Servern ermöglicht. JSON ist von JavaScript abgeleitet und Programmiersprachen unabhängig. &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/03/14/erklaerung-json/">JSON &#8211; Schönheit der einfachen Datenübertragung</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>JSON <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a> Object Notation, ist ein offenes Standard-Datei- und Datenaustauschformat, dass menschenlesbaren Text zur Speicherung und Übertragung (Serialisierung) von Datenobjekten, einschließlich dem von Webanwendungen mit Servern ermöglicht. JSON ist von <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a> abgeleitet und Programmiersprachen unabhängig. Parser und Generatoren existieren in allen verbreiteten Sprachen.&nbsp;</p>



<p>Insbesondere trifft man auf JSON bei Webanwendungen und mobilen Apps in Verbindung mit <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>, Ajax oder WebSockets zum Übertragen von Daten zwischen dem Client und dem Server.</p>



<h3 class="wp-block-heading">Serialisierung</h3>



<p>Bei einer Abbildung von strukturierten Daten auf eine sequenzielle Darstellungsform, spricht man in der Informatik von einer Serialisierung. Die Serialisierung wird hauptsächlich für die Speicherung von Objekten in Dateien und für die Übertragung von Objekten über das Netzwerk bei verteilten Softwaresystemen verwendet.</p>



<p>Übliche Speichermedien sind nur in der Lage, Datenströme zu speichern. Serialisierung für die Persistenz von Objekten. Hier wird der komplette Zustand des Objektes, inklusive aller referenzierten Objekte, in einen Datenstrom umgewandelt, der anschließend auf ein Speichermedium geschrieben wird.</p>



<p>Nach der Serialisierung liegt ein Objekt mehrfach vor. Sowohl in der externen Darstellung, beispielsweise als Datei als auch im Arbeitsspeicher. Wird nach der Serialisierung eine Änderung am Objekt im Arbeitsspeicher vorgenommen, hat dieses keine Auswirkung auf das serialisierte Objekt in der externen Darstellung.</p>



<p>Die Umkehrung der Serialisierung, also die Umwandlung eines Datenstroms in Objekte, bezeichnet man als Deserialisierung.</p>



<p>In der Linguistik bezeichnet man mit Serialisierung die Art und Weise, wie hierarchische grammatikalische Strukturen in eine lineare Abfolge gebracht sind, damit sie in einer zeitlichen Abfolge sprachlicher Ausdrücke dargestellt werden kann. Diese Reihenfolge kann in verschiedenen Sprachen unterschiedlich sein.</p>



<h3 class="wp-block-heading">Eine kurze Zeitreise</h3>



<p>JSON entstand aus der Notwendigkeit heraus, ein zustandsloses (stateless) Echtzeit-Kommunikationsprotokoll zwischen Server und Browser zu haben, ohne Browser-PlugIns wie Flash oder Java-Applets zu verwenden, die sich Anfang der 2000er Jahre als vorherrschende Methoden, im Einsatz befanden.</p>



<p>Crockford spezifizierte und verbreitete als Erster das JSON-Format. Das Akronym stammt von State Software, ein von Crockford und anderen im März 2001 gegründetes Unternehmen. Die Gründer hatten sich geeinigt, ein System zu entwickeln, dass Standard-Browser-Funktionen nutzte und eine Abstraktionsschicht für Web-Entwickler bereitstellte, um zustandsbehaftete (abstraction layer) Web-Anwendungen zu erstellen, die über eine dauerhafte Duplex-Verbindung zu einem Web-Server verfügten. Sie hielten dafür zwei Hypertext Transfer Protocol (https)-Verbindungen offen und bauten die Verbindung wieder auf, bevor die Standard-Browser-Timeouts eintraten, wenn kein Datenaustausch stattfand. Die Gründer stimmten darüber ab, ob das Datenformat JSML (<a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a> Markup Language) oder JSON (<a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a> Object Notation) genannt und unter welcher Lizenz die Verfügungstellung stattfinden sollte. Die Website JSON.org ging dann im Jahr 2002 online. Im Dezember 2005 begann Yahoo! damit, die ersten Webdienste (Web-Services) in JSON anzubieten.</p>



<h3 class="wp-block-heading">Vorgänger geht auf ein Spiel für Kinder</h3>



<p>Ein Vorläufer der JSON-Bibliotheken wurde in einem Projekt für Kinder, einem digitalen Trading-Spiel namens Cartoon Orbit bei Communities.com (Die Gründer von State hatten alle zuvor bei diesem Unternehmen gearbeitet), für Cartoon Network verwendet, dass ein browserseitiges Plugin mit einem proprietären Nachrichtenformat zur Manipulation von DHTML-Elementen nutzte (Dieses System gehört übriges 3DO). Nach der Entdeckung der frühen Ajax-Fähigkeiten verwendeten digiGroups, Noosh und andere, Frames, um Informationen in das visuelle Feld des Browsers zu übertragen, ohne den visuellen Kontext einer Webanwendung aktualisieren zu müssen. So hatten sie Rich-Web-Anwendungen in Echtzeit erstellt, die nur die Standard https-, <a href="https://ceosbay.com/2022/12/29/erklaerung-html/" target="_blank" rel="noreferrer noopener">HTML</a>&#8211; und <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>-Fähigkeiten von Netscape 4.0.5+ und IE 5+ verwendeten. Crockford fand darauf heraus, dass <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a> als objektbasiertes Nachrichtenformat für ein solches System verwendet werden kann. Das System wurde später an Sun Microsystems, Amazon.com und EDS verkauft.</p>



<p>JSON basiert teilweise auf <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a> und wird häufig auch mit <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a> verwendet. Dennoch ist es ein sprachunabhängiges Datenformat. Code zum Parsen und Generieren von JSON-Daten ist in vielen Programmiersprachen leicht verfügbar. Auf der JSON-Website sind die JSON-Bibliotheken nach Sprachen geordnet.</p>



<p>Im Oktober 2013 veröffentlichte Ecma International die erste Ausgabe seines JSON-Standards ECMA-404. Im selben Jahr verwendete RFC 7158 ECMA-404 als Referenz. 2014 wurde RFC 7159 zur Hauptreferenz für die Verwendung von JSON im Internet und löste RFC 4627 sowie RFC 7158 ab (wobei ECMA-262 und ECMA-404 als Hauptreferenzen beibehalten wurden). Im November 2017 veröffentlichte ISO/IEC JTC 1/SC 22 ISO/IEC 21778:2017 als internationalen Standard. Am 13. Dezember 2017 hat die Internet Engineering Task Force RFC 7159 durch die Veröffentlichung von RFC 8259, der aktuellen Version des Internet-Standards STD 90, überholt (ersetzt).</p>



<p>Crockford fügte der JSON-Lizenz eine Klausel hinzu, die besagt, dass &#8222;die Software für das Gute, nicht für das Böse verwendet werden soll&#8220;, um die JSON-Bibliotheken zu öffnen und sich gleichzeitig über Unternehmensjuristen und diejenigen lustig zu machen, die übermäßig pedantisch sind. Ironischer- und lustigerweise führte diese Klausel zu Konflikten der JSON-Lizenz mit anderen <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open-Source</a>-Lizenzen, da <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open-Source</a>-Software und freie Software in der Regel keine Einschränkungen hinsichtlich des Verwendungszwecks implizieren.</p>



<h3 class="wp-block-heading">Wie ist JSON aufgebaut?</h3>



<p>Die Daten können beliebig verschachtelt werden, beispielsweise ist ein Array (indizierte Liste) von Objekten möglich, die wiederum Arrays oder Objekte enthalten. Als Zeichenkodierung benutzt JSON standardmäßig UTF-8. Auch UTF-16 und UTF-32 werden unterstützt.</p>



<h3 class="wp-block-heading">JSON und die Typen von Elementen</h3>



<ul class="wp-block-list">
<li>null = Nullwert (Wird durch das Schlüsselwort null dargestellt.)</li>



<li>Boolean = Boolescher Wert (Wird durch die Schlüsselwörter true und false dargestellt. Dies sind keine Zeichenketten. Sie werden daher, wie null, nicht in Anführungszeichen gesetzt.</li>



<li>Number = Zahl (Ist eine Folge der Ziffern 0–9. Diese Folge kann durch ein negatives Vorzeichen &#8211; eingeleitet und durch einen Dezimalpunkt . unterbrochen sein. Die Zahl kann durch die Angabe eines Exponenten e oder E ergänzt werden, dem ein optionales Vorzeichen + oder &#8211; und eine Folge der Ziffern 0–9 folgt.)</li>



<li>String = Zeichenkette (Eine Folge von null oder mehr Unicode-Zeichen. Es beginnt und endet mit doppelten geraden Anführungszeichen (&#8222;). Es kann Unicode-Zeichen und durch \ eingeleitete Escape-Sequenzen enthalten.</li>



<li>Array = Anordnung (Beginnt mit [ und endet mit ]. Es enthält eine durch Kommata geteilte, indizierte Liste von Elementen gleichen oder verschiedenen Typen. Leere Arrays sind ebenfalls zulässig.</li>



<li>Object = Objekt (Beginnt mit { und endet mit }. Es enthält eine durch Kommata geteilte, ungeordnete Liste von Eigenschaften. Objekte ohne Eigenschaften („leere Objekte“) sind ebenfalls zulässig. Das Objekt besteht aus einem Schlüssel und einem Wert, getrennt durch einen Doppelpunkt (Schlüssel : Wert). Die Schlüssel sollten eindeutig sein, da unterschiedliche Parser mit mehrfach vorkommenden Schlüsseln unterschiedlich umgehen. Während ECMA-404 keine Eindeutigkeit voraussetzt, fordert RFC 7159, dass Schlüssel innerhalb eines Objekts eindeutig sind. Folglich ist der Schlüssel eine Zeichenkette und der Wert ein beliebiges Element.</li>
</ul>



<p>Nicht signifikante Leerraum-Zeichen sind erlaubt, also Leerzeichen (Unicode U+0020), horizontale Tabs (U+0009), Zeilenumbrüche mittels LF und / oder CR (U+000D und U+000A). Diese Zeichen werden außerhalb von Zeichenketten bei der Interpretation ignoriert.</p>



<h3 class="wp-block-heading">Die Grenzen von JSON</h3>



<p>JSON unterstützt nicht alle von JavaScript unterstützten Datentypen. Bei nicht unterstützten Datentypen wird folgendermaßen serialisiert:</p>



<ul class="wp-block-list">
<li>NaN, Infinity und -Infinity werden zu null serialisiert.</li>



<li>Date-Objekte werden in eine Zeichenkette konvertiert, die einer Datumsformatbeschreibung nach ISO-8601 genügt.</li>



<li>Function-, RegExp- und Error-Objekte werden verworfen.</li>
</ul>



<h3 class="wp-block-heading">Das folgende Beispiel zeigt eine mögliche JSON-Darstellung zur Beschreibung meiner Person.</h3>



<pre class="wp-block-code"><code>{
  "Unternehmen": "COEZBAY",
  "Nummer": "2023-23-23-777",
  "Waehrung": "BTC",
  "Inhaber": "CEO"
  {
    "Name": "Oezbay",
    "Vorname": "Cagatay",
    "maennlich": true,
    "Hobbys": &#91;"IT", "Schach", "Basketball"],
    "Alter": 38,
    "Kinder": &#91;],
    "Partner": null
  }
}</code></pre>



<h3 class="wp-block-heading">Das JSON-Schema</h3>



<p>Das JSON-Schema gibt ein JSON-basiertes Format an, um die Struktur von JSON-Daten für die Validierung, Dokumentation und Interaktionssteuerung zu definieren. Es enthält einen Contract für die JSON-Daten, die für eine bestimmte Anwendung erforderlich sind und wie diese Daten geändert werden können.</p>



<p>Das Schema basiert auf den Konzepten des <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a>-Schemas, ist jedoch JSON-basiert. Wie in XSD (<a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a> Schema Definition) können dieselben Serialisierungs- und Deserialisierungsprogramme sowohl für das Schema als auch für die Daten verwendet werden. Es ist selbstbeschreibend und in einem Internet-Entwurf der <a href="https://www.ietf.org" target="_blank" rel="noreferrer noopener">Internet Engineering Task Force</a>&nbsp;festgelegt. Für verschiedene Programmiersprachen stehen mehrere Validatoren mit jeweils unterschiedlichen Konformitätsstufen zur Verfügung.</p>



<h3 class="wp-block-heading">Der Vergleich mit XML</h3>



<p>Sowohl JSON als auch <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a> beschreiben die Struktur eines Datensatzes. Der Datensatz kann weitere Datensätze enthalten. Dadurch sind beliebig tief verschachtelte Strukturen möglich.</p>



<p>In XML sind die einzelnen Knoten der Datenstruktur benannt, während die Knoten in JSON unbenannt bleiben.</p>



<p>Einfache Zeichenketten in <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a> können sowohl als Attribut eines Elements als auch als eigenständiges Element beschrieben sein. In JSON gibt es diese Unterscheidung nicht. Diese in den meisten Fällen irrelevante Flexibilität führt dazu, dass sich die Struktur von <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a>-Dokumenten häufig unnötigerweise unterscheidet.</p>



<p>Sowohl für JSON als auch für <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a> gibt es Beschreibungssprachen, um weiter einzugrenzen, wie „gültige“ Dokumente auszusehen haben. Ganz im Gegensatz zu „wohlgeformten“ Dokumenten.</p>



<p>Die Syntax von JSON ist einfacher gestaltet und erscheint daher oft lesbarer und insbesondere leichter schreibbar. In der Regel produziert JSON auch einen geringeren Overhead im Vergleich zu <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a>.</p>



<p>Sowohl JSON als auch <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a> müssen von einem speziellen Parser eingelesen werden. Traditionell ist jedes wohlgeformte JSON-Dokument ein gültiger <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>-Ausdruck. Das unaufmerksame Interpretieren von JSON-Dokumenten mit eval() führt jedoch zu Sicherheitslücken, die nicht zu unterschätzen sind.</p>



<p>Sowohl JSON als auch <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a> sind nicht gut zum Repräsentieren von Binärdaten geeignet, da beide Datenformate als Grundelement zeichenbasiert sind und nicht bytebasiert.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/03/14/erklaerung-json/">JSON &#8211; Schönheit der einfachen Datenübertragung</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/03/14/erklaerung-json/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1071</post-id>	</item>
	</channel>
</rss>
