{"id":1244,"date":"2016-10-31T16:25:07","date_gmt":"2016-10-31T15:25:07","guid":{"rendered":"https:\/\/launix.de\/launix\/?p=1244"},"modified":"2020-03-03T11:18:06","modified_gmt":"2020-03-03T10:18:06","slug":"neues-programm-macht-individualsoftware-billig","status":"publish","type":"post","link":"https:\/\/launix.de\/launix\/en\/neues-programm-macht-individualsoftware-billig\/","title":{"rendered":"Neues Programm macht Individualsoftware Mittelstands-f\u00e4hig"},"content":{"rendered":"\n<p>Das Wundermittel hei\u00dft <a href=\"https:\/\/launix.de\/launix\/feature-oriented-programming\/\" target=\"_blank\" rel=\"noopener noreferrer\">Feature Oriented Programming<\/a>. Hier wird erkl\u00e4rt, wie es funktioniert:<\/p>\n\n\n\n<!--more-->\n\n\n\n<h2 class=\"wp-block-heading\">Im Vordergrund: Die Kunden-Anforderungen<\/h2>\n\n\n\n<p>Ihre individuellen W\u00fcnsche f\u00fcr die <a href=\"https:\/\/launix.de\/launix\/aufbau-einer-unternehmens-datenbank\/\" target=\"_blank\" rel=\"noopener noreferrer\">Unternehmens-Datenbank<\/a> stehen im Vordergrund. Jeder dieser W\u00fcnsche wird in Form einer <b>Anforderung<\/b> formalisiert und aufgeschrieben. Anforderungen k\u00f6nnen sein:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Das Vorhandensein einer Tabelle (z.B. Kunden-Liste)<\/li><li>Das Vorhandensein einer Spalte in einer Tabelle (z.B. Telefon-Nummer in Kunden-Liste)<\/li><li>Zusammenh\u00e4nge (z.B. ein Kunde hat mehrere Rechnungen)<\/li><li>Programm-Funktionen (z.B. PDF-Erstellung der Rechnung mit <a href=\"https:\/\/launix.de\/epm\/dinbrief.html\" target=\"_blank\" rel=\"noopener noreferrer\">Launix DIN-Brief-Ersteller<\/a>)<\/li><li>Sicherheits-Regeln (Mitarbeiter darf keine Geh\u00e4lter-Liste einsehen)<\/li><li>\u00dcber-Begriffe (z.B. Lagerhaltungs-Modul &#8211; dieses wiederum erzeugt automatisch die Anforderungen, die f\u00fcr die Lagerhaltungs-Funktionalit\u00e4t n\u00f6tig sind)<\/li><\/ul>\n\n\n\n<p>Um diese Anforderungen formal aufzuschreiben, bedienen wir uns des Systems der <a href=\"https:\/\/de.wikipedia.org\/wiki\/Pr%C3%A4dikatenlogik\" target=\"_blank\" rel=\"noopener noreferrer\">Pr\u00e4dikatenlogik<\/a>. Pr\u00e4dikatenlogik erlaubt uns, Fakten eindeutig darzustellen. Das folgende Video zeigt in einem einfachen Beispiel, wie aus drei Anforderungen fix ein Programm generiert wird:<\/p>\n\n\n\n<figure class=\"wp-block-embed\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.youtube.com\/watch?v=7pE7CZaLBKU\n<\/div><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Ein Code-Generator erzeugt automatisch das Programm nach den Anforderungen<\/h2>\n\n\n\n<p>Sind alle <b>Fakten<\/b> eingetippt, beginnt der Prozess der <b>Ableitung<\/b>. Aus implizitem Wissen wird explizites Wissen &#8211; genau die Zeit-Einsparung, die FOP preisg\u00fcnstiger als Individualsoftware macht. Doch was hei\u00dft das genau?<\/p>\n\n\n\n<p>Implizites Wissen ist Wissen, das logisch geschlussfolgert werden kann, aber nicht so offen ausgesprochen wird. Explizites Wissen hingegen wird w\u00f6rtlich so genannt. Ein Beispiel:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Peter liebt Paul<\/p><\/blockquote>\n\n\n\n<p>Das explizite Wissen dahinter ist, dass Peter Paul liebt. Implizit schlussfolgern wir aber auch, dass Peter schwul ist, obwohl es nicht w\u00f6rtlich so da steht. Der Grund, warum wir schlussfolgern d\u00fcrfen, dass Peter schwul ist, ist folgende Regel:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Wenn ein Mann jemanden liebt, der ebenfalls ein Mann ist, dann ist dieser schwul.<\/p><\/blockquote>\n\n\n\n<p>Nat\u00fcrlich deckt dieses einfache Beispiel nicht jeden erdenklichen Gender-Fall ab. Jedoch zeigt es sehr deutlich: Fakten und ein paar Regeln ergeben weitere Fakten. Akademisch ausgedr\u00fcckt spricht man von <a href=\"https:\/\/de.wikipedia.org\/wiki\/Implikation\" target=\"_blank\" rel=\"noopener noreferrer\">Implikation<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Wie wirkt sich das auf Unternehmens-Software aus?<\/h2>\n\n\n\n<p>Mit diesem System der Anforderungs-Fakten und Schlussfolgerungen daraus lassen sich automatisch Software generieren. Das Neue im Gegensatz zu Modul-Systemen herk\u00f6mmlicher Software ist, dass bei uns Module wesentlich besser miteinander vernetzt sind. Wir k\u00f6nnen Regeln aufstellen wie:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Wenn das E-Mail-Modul UND das CRM-Modul aktiviert sind, hinterlege alle in E-Mails vorkommenden Personen mit einer Verkn\u00fcpfung zum entsprechenden Kunden-Datensatz<\/p><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Wo kann man es kaufen?<\/h2>\n\n\n\n<p>Welche Kosten kommen auf Sie, wenn Sie jetzt ein FOP-Projekt mit uns starten wollen?<br>Mit dem <a href=\"https:\/\/launix.de\/launix\/fop-kalkulator\/\" target=\"_blank\" rel=\"noopener noreferrer\">FOP-Kalkulator<\/a> k\u00f6nnen Sie Ihr Projekt dimensionieren.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Bleiben Sie auf dem Laufenden!<\/h2>\n\n\n<p>[wysija_form id=&#8221;2&#8243;]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Das Wundermittel hei\u00dft Feature Oriented Programming. Hier wird erkl\u00e4rt, wie es funktioniert:<\/p>","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":0,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","_uag_custom_page_level_css":"","footnotes":""},"categories":[1],"tags":[81],"class_list":["post-1244","post","type-post","status-publish","format-standard","hentry","category-allgemein","tag-feature-oriented-programming","single-item"],"featured_image_urls_v2":{"full":"","thumbnail":"","medium":"","medium_large":"","large":"","1536x1536":"","2048x2048":"","trp-custom-language-flag":"","xs-thumb":"","appku-shop-single":""},"post_excerpt_stackable_v2":"<p>Das Wundermittel hei\u00dft Feature Oriented Programming. Hier wird erkl\u00e4rt, wie es funktioniert: Im Vordergrund: Die Kunden-Anforderungen Ihre individuellen W\u00fcnsche f\u00fcr die Unternehmens-Datenbank stehen im Vordergrund. Jeder dieser W\u00fcnsche wird in Form einer Anforderung formalisiert und aufgeschrieben. Anforderungen k\u00f6nnen sein: Das Vorhandensein einer Tabelle (z.B. Kunden-Liste)Das Vorhandensein einer Spalte in einer Tabelle (z.B. Telefon-Nummer in Kunden-Liste)Zusammenh\u00e4nge (z.B. ein Kunde hat mehrere Rechnungen)Programm-Funktionen (z.B. PDF-Erstellung der Rechnung mit Launix DIN-Brief-Ersteller)Sicherheits-Regeln (Mitarbeiter darf keine Geh\u00e4lter-Liste einsehen)\u00dcber-Begriffe (z.B. Lagerhaltungs-Modul &#8211; dieses wiederum erzeugt automatisch die Anforderungen, die f\u00fcr die Lagerhaltungs-Funktionalit\u00e4t n\u00f6tig sind) Um diese Anforderungen formal aufzuschreiben, bedienen wir uns des Systems der Pr\u00e4dikatenlogik.&hellip;<\/p>\n","category_list_v2":"<a href=\"https:\/\/launix.de\/launix\/en\/category\/allgemein\/\" rel=\"category tag\">Allgemein<\/a>","author_info_v2":{"name":"Carl-Philip H\u00e4nsch","url":"https:\/\/launix.de\/launix\/en\/author\/carli\/"},"comments_num_v2":"0 comments","uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"trp-custom-language-flag":false,"xs-thumb":false,"appku-shop-single":false},"uagb_author_info":{"display_name":"Carl-Philip H\u00e4nsch","author_link":"https:\/\/launix.de\/launix\/en\/author\/carli\/"},"uagb_comment_info":0,"uagb_excerpt":"Das Wundermittel hei\u00dft Feature Oriented Programming. Hier wird erkl\u00e4rt, wie es funktioniert:","_links":{"self":[{"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/posts\/1244","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/comments?post=1244"}],"version-history":[{"count":5,"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/posts\/1244\/revisions"}],"predecessor-version":[{"id":3617,"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/posts\/1244\/revisions\/3617"}],"wp:attachment":[{"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/media?parent=1244"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/categories?post=1244"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/tags?post=1244"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}