Nassi–Shneiderman diagram

Example of a Nassi–Shneiderman diagram

A Nassi–Shneiderman diagram (NSD) in computer programming is a graphical design representation for structured programming.[1] This type of diagram was developed in 1972 by Isaac Nassi and Ben Shneiderman who were both graduate students at Stony Brook University.[2] These diagrams are also called structograms,[3] as they show a program's structures.

Overview

Following a top-down design, the problem at hand is reduced into smaller and smaller subproblems, until only simple statements and control flow constructs remain. Nassi–Shneiderman diagrams reflect this top-down decomposition in a straightforward way, using nested boxes to represent subproblems. Consistent with the philosophy of structured programming, Nassi–Shneiderman diagrams have no representation for a GOTO statement.

Nassi–Shneiderman diagrams are only rarely used for formal programming. Their abstraction level is close to structured program code and modifications require the whole diagram to be redrawn, but graphic editors removed that limitation. They clarify algorithms and high-level designs, which make them useful in teaching. They were included in Microsoft Visio and dozens of other software tools, such as the German EasyCODE.[4]

In Germany, Nassi–Shneiderman diagrams were standardised in 1985 as DIN 66261.[5] They are still used in German introductions to programming, for example Böttcher and Kneißl's introduction to C,[6] Baeumle-Courth and Schmidt's introduction to C[7] and Kirch's introduction to C#.[8]

Nassi–Shneiderman diagrams can also be used in technical writing.[9]

Diagrams

Process blocks: the process block represents the simplest of steps and requires no analysis. When a process block is encountered, the action inside the block is performed and we move onto the next block.

Process blocks

Branching blocks: there are two types of branching blocks. First is the simple True/False or Yes/No branching block which offers the program two paths to take depending on whether or not a condition has been fulfilled. These blocks can be used as a looping procedure stopping the program from continuing until a condition has been fulfilled.

True/False branching blocks

The second type of branching block is a multiple branching block. This block is used when a select case is needed in a program. The block usually contains a question or select case. The block provides the program with an array of choices and is often used in conjunction with sub process blocks to save space.

Multiple branching blocks

Testing loops: this block allows the program to loop one or a set of processes until a particular condition is fulfilled. The process blocks covered by each loop are subset with a side-bar extending out from the condition.

There are two main types of testing loops, test first and test last blocks. The only difference between the two is the order in which the steps involved are completed. In the test first situation, when the program encounters the block it tests to see if the condition is fulfilled, then, if it is not completes the process blocks and then loops back. The test is performed again and, if the condition is still unfulfilled, it processes again. If at any stage the condition is fulfilled the program skips the process blocks and continues onto the next block.

Test first loop block

The test last block is simply reversed, the process blocks are completed before the test is performed. The test last loop allows for the process blocks to be performed at least once before the first test.

Test last loop block

Parallel execution can be drawn like this:

parallel processing

See also

Publications

References

  1. ^ Hans-Georg Fill (2009). Visualisation for Semantic Information Systems. p.32
  2. ^ A short history of structured flowcharts (Nassi-Shneiderman Diagrams). Webdoc draft: May 27, 2003. (Source)
  3. ^ Rolf Isermann (1988). Automatic Control: Selected papers from the triennial world congress of the International Federation of Automatic Control : Munich, Federal Republic of Germany, 27–31 July 1987, Volume 10;Volume 14. p.89
  4. ^ "Implementation with structure diagrams". EASYCODE GmbH. Retrieved 2023-02-07.
  5. ^ Deutsches Institut für Normung e. V. (DIN): DIN 66261: Informationsverarbeitung; Sinnbilder für Struktogramme nach Nassi-Shneiderman.
  6. ^ Böttcher, Axel; Kneißl, Franz: Informatik für Ingenieure: Grundlagen und Programmierung in C. 3rd edition. München: Oldenbourg, 2012. ISBN 978-3-486-70527-0. See especially Chapter 10: "Kontrollstrukturen" (control flow).
  7. ^ Baeumle-Courth, Peter; Schmidt, Torsten: Praktische Einführung in C. München: Oldenbourg, 2012. ISBN 978-3-486-70799-1. See especially Chapter 6: "Kontrollstrukturen" (control flow).
  8. ^ Kirch, Ulla: C# lernen und professionell anwenden. Heidelberg: mitp, 2009. ISBN 978-3-8266-5915-7. See especially Chapter 5: "Schleifen und Verzweigungen" (loops and branches).
  9. ^ Weiss, Edmond H.: "Visualizing a Procedure with Nassi-Schneiderman Charts", Journal of Technical Writing and Communication, Vol. 20, Nr. 3 (1990): 237-54.

Read other articles:

Antonello Cuccureddu Antonello Cuccureddu (Alghero 4 Oktober 1949) merupakan pemain sepak bola dan pelatih berkebangsaan Italia. Dia pun pernah bermain untuk tim Italia pada Piala Dunia FIFA 1978 di Argentina. Pada tahun 2000 dia pernah membawa klub Crotone promosi ke Serie B. Skuat tim nasionallbsSkuad Italia pada Piala Dunia FIFA 1978 1 Zoff 2 Bellugi 3 Cabrini 4 Cuccureddu 5 Gentile 6 Maldera 7 Manfredonia 8 Scirea 9 Antognoni 10 Benetti 11 Pecci 12 Conti 13 P. Sala 14 Tardelli 15 Zac...

 

 

Gereja Kristus RajaGereja Kristus Raja, AruboChrist the King Church in AruboGereja Kristus Raja0°30′21″S 166°55′54″E / 0.505878°S 166.931729°E / -0.505878; 166.931729LokasiArubo, EwaNegara NauruDenominasiGereja Katolik RomaAdministrasiKeuskupanKeuskupan Tarawa dan Nauru Gereja Kristus Raja[1] disebut juga Gereja Katolik Kristus Raja atau cukup Gereja Katolik Arubo,[2] adalah sebuah gereja Katolik yang terletak di kota Arubo di distrik E...

 

 

District in Khulna Division, Bangladesh District of Bangladesh in KhulnaJessore District যশোর জেলাDistrict of BangladeshJashore DistrictClockwise from top-left: Noapara Bazar, Sheikhpur Jami Masjid, Jessore Polytechnic Institute, River in Keshabpur, Residence of Michael Madhusudan DuttLocation of Jessore District in BangladeshExpandable map of Jessore DistrictCountry BangladeshDivisionKhulnaDistrict Established1781 (243 years ago) (1781)HeadquartersJessoreGo...

Jalur A / Línea AStasiun Agricola OrientalIkhtisarJenisAngkutan cepatSistemAngkutan cepat di Kota MeksikoLokasiIztacalcoIztapalapaLos Reyes La PazTerminusStasiun PantitlánStasiun La PazStasiun10OperasiDibuka12 Agustus 1991OperatorSistema de Transporte Colectivo (STC)RangkaianFM-86, FM-95A, FE-07, FE-10[1]Data teknisPanjang lintas14,893 km (9 mi)Panjang rel17,192 km (11 mi)Jenis rel2Lebar sepur1.435 mm (4 ft 8+1⁄2 in) sepur standarElektri...

 

 

British polymath (1890–1962) For the New Zealand cricketer, see Ronald Fisher (cricketer). SirRonald FisherFRSFisher in 1913BornRonald Aylmer Fisher(1890-02-17)17 February 1890London, EnglandDied29 July 1962(1962-07-29) (aged 72)Adelaide, South Australia, AustraliaAlma materGonville and Caius College, CambridgeKnown forFisher's exact testFisher's inequalityFisher's principleFisher's geometric modelFisher's Iris data setFisher's linear discriminantFisher's equationFisher infor...

 

 

Municipality in Akershus, NorwayNesodden Municipality Nesodden kommuneMunicipality FlagCoat of armsAkershus within NorwayNesodden within AkershusCoordinates: 59°48′31″N 10°39′20″E / 59.80861°N 10.65556°E / 59.80861; 10.65556CountryNorwayCountyAkershusDistrictFolloAdministrative centreNesoddtangenGovernment • Mayor (2015)Truls Wickholm (AP)Area • Total61 km2 (24 sq mi) • Land61 km2 (24 sq...

この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方)出典検索?: コルク – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2017年4月) コルクを打ち抜いて作った瓶の栓 コルク(木栓、�...

 

 

You can help expand this article with text translated from the corresponding article in German. (October 2012) Click [show] for important translation instructions. View a machine-translated version of the German article. Machine translation, like DeepL or Google Translate, is a useful starting point for translations, but translators must revise errors as necessary and confirm that the translation is accurate, rather than simply copy-pasting machine-translated text into the English Wikipe...

 

 

F4U Corsair Sebuah F4U-4 Corsair yang telah direstorasi dari era perang Korea Jenis Pesawat tempur pengebom berbasis kapal induk Negara asal Amerika Serikat Pembuat Chance Vought Penerbangan perdana 29 Mei 1940 Pengenalan 28 Desember 1942 Dipensiunkan 1953 (Amerika Serikat)1979 (Honduras) Pengguna utama United States NavyUnited States Marine CorpsRoyal NavyRoyal New Zealand Air Force Dibuat 1942–1953[1] Jumlah 12.571 Varian Goodyear F2G Corsair F4U Corsair adalah pesawat tempu...

Sutjiati NarendraSutjiati Narendra usai berkompetisi pada PON Papua 2021Informasi pribadiKewarganegaraan IndonesiaLahir13 Februari 2004 (umur 20)New York, Amerika SerikatTahun aktif2015-sekarangTinggi1,65 m (5 ft 5 in) OlahragaNegaraIndonesiaOlahragaSenamKlubPengprov PERSANI LampungTim PON Lampung (2021, 2021) Rekam medali Senam Ritmik Mewakili  Amerika Serikat Kejuaraan Dunia International DuGYM Cup - Dubai 2nd Las Vegas Invitational 1st International Las Vegas ...

 

 

麻豆小鎮类型大愛真實人生劇場编剧車錢草編劇小組导演龍冠武主演張維錫、林子萱 、吳秀珠、吳帆、侯傑、楊凱琪制作国家/地区  中華民國(臺灣)语言國語、閩南語标语失明,不代表失能,我們是蘊藏一股蓄勢待發的能量。失去視力,不是失去世界。他沒有彩色的世界卻有燦爛的人生,路越來越寬!集数40集每集长度45分鐘(不含廣告)片头曲荒山亮<水水世界>...

 

 

اضغط هنا للاطلاع على كيفية قراءة التصنيف طهر الهيمالايا ذكر بالغ في محمية في الهند حالة الحفظ أنواع قريبة من خطر الانقراض [1] المرتبة التصنيفية نوع[2][3]  التصنيف العلمي النطاق: حقيقيات النوى المملكة: الحيوانات الشعبة: الحبليات الطائفة: الثدييات الرتبة: مزدوجا...

  الرأس الأخضر (بالبرتغالية: República de Cabo Verde)‏  الرأس الأخضرعلم الرأس الأخضر  الرأس الأخضرشعار الرأس الأخضر  [لغات أخرى]‏    الشعار الوطني(بالبرتغالية: Paz, Trabalho, Pátria)‏  النشيد: الأرض والسكان إحداثيات 15°18′N 23°42′W / 15.3°N 23.7°W / 15.3; -23.7   [1] �...

 

 

青山学院大学系属浦和ルーテル学院小学校・中学校・高等学校 北緯35度53分17.3秒 東経139度42分58.9秒 / 北緯35.888139度 東経139.716361度 / 35.888139; 139.716361座標: 北緯35度53分17.3秒 東経139度42分58.9秒 / 北緯35.888139度 東経139.716361度 / 35.888139; 139.716361過去の名称 (小学校)聖望学園小学校浦和ルーテル学院小学校(中学校・高等学校)聖望学園浦...

 

 

This template does not require a rating on Wikipedia's content assessment scale.It is of interest to the following WikiProjects:Japan Japan portalThis template is within the scope of WikiProject Japan, a collaborative effort to improve the coverage of Japan-related articles on Wikipedia. If you would like to participate, please visit the project page, where you can join the project, participate in relevant discussions, and see lists of open tasks. Current time in Japan: 07:49, October 2, 202...

Rougemontierscomune Rougemontiers – Veduta LocalizzazioneStato Francia Regione Normandia Dipartimento Eure ArrondissementBernay CantoneBourg-Achard TerritorioCoordinate49°21′N 0°44′E49°21′N, 0°44′E (Rougemontiers) Altitudine70 e 144 m s.l.m. Superficie11,91 km² Abitanti908[1] (2009) Densità76,24 ab./km² Altre informazioniCod. postale27350 Fuso orarioUTC+1 Codice INSEE27497 CartografiaRougemontiers Sito istituzionaleModifica dati su Wikida...

 

 

NGC 1526 La galaxie spirale barrée NGC 1526 Données d’observation(Époque J2000.0) Constellation Réticule Ascension droite (α) 04h 05m 12,3s[1] Déclinaison (δ) −65° 50′ 23″ [1] Magnitude apparente (V) 13,7[2] 14,5 dans la Bande B[2] Brillance de surface 12,90 mag/am2[2] Dimensions apparentes (V) 0,8′ × 0,6′[2] Décalage vers le rouge +0,017799 ± 0,000834[1] Angle de position 36°[2] Localisation dans la constellation : Réticule Astr...

 

 

For the village in the Scottish Highlands, see First Coast, Highland. Region in Florida, United StatesFirst Coast Northeast FloridaRegionLeft to right from top: United States Post Office, Custom House, and Courthouse in Fernandina Beach, Lightner Museum in St. Augustine, James Weldon Johnson Park in Jacksonville, Downtown Jacksonville skyline, Jacksonville Beach Pier, the Matanzas River in Palm Coast.  Northeast Florida countiesCountry United StatesState FloridaLargest city Jac...

Alfred von Reumont Alfred von Reumont (Aquisgrana, 15 agosto 1808 – Aquisgrana, 27 aprile 1887) è stato un diplomatico e studioso tedesco. Indice 1 Biografia 2 Lavori 3 Altri progetti 4 Collegamenti esterni Biografia Figlio di Gerhard Reumont (1765-1829), prende il nome di Alfred successivamente in onore di Alfredo il Grande[senza fonte]. Studiò presso le università di Bonn e di Heidelberg, ottenne una posizione a Firenze attraverso l'inglese William Craufurd, ma presto entr...

 

 

Battle in the German Peasants' WarBattle of WurzachSchlacht am LeprosenbergView from the Grabener Höhe of the battlefield in 2012Date14 April 1525Locationnear Bad WurzachBelligerents Old Swabian Confederation Swabian LeagueCommanders and leaders Pfaff-Florian of Aichstetten George III, Truchsess of Waldburg-ZeilStrength 7,000 7,000 vteGerman Peasants' War Kempten Leipheim Wurzach Weinsberg Massacre Stuttgart Erfurt 1st Würzburg Fulda Frankenhausen Zabern Böblingen Königshofen 2nd Würzbur...