Klassiker: Ampeln

Eine Ampel zu programmieren ist der Klassiker, relativ einfach mit starkem Alltagsbezug.

In dieser Zip-Datei findet ihr Ampelsteuerungen für eine Ampel und eine Ampel-Kreuzung. In der Ampel-Powerpointdatei identifiziere ich die Prozesse und stelle die entsprechenden Schaltungen vor.

Serielle Übertragung

Serielle Datenübertragungen übertragen digitale Daten  auf einer Leitung. Der Name seriell assoziiert falsche Vorstellungen, da im Prinzip jede Datenübertragung seriell arbeitet. Ein besserer Name ist bit-serielle Datenübertragung (Wikipedia). In der Zip-Datei zeige ich eine Lösung für ein Byte über eine Leitung. Dazu könnt ihr die passende Seriell-Powerpoint Präsentation herunterladen, mit den Schritten der Prozessidentifikation.


Serielle Übertragung von einem Bit
dazu wird ein Schieberegister benötigt
das ist natürlich auch in der Zip-Datei 

Prozessidentifikation

Bevor ein Prozess automatisiert werden kann, muss er identifiziert  werden. Meist werden Prozesse als gegeben und bekannt unterstellt. Aber die Prozessidentifikation ist fraglos erste Aufgabe und damit zugleich die Phase, die Erfolg oder Misserfolg bestimmt. 

Prozesse als solche werden also als existent angenommen. Ablaufzusammenhänge sind jedoch oft unscharf, mehrdeutig, uneinheitlich, variabel, zufällig, neuartig und assoziativ. 

Folgende Aktivitäten sind stets zu durchlaufen:

  1. Festlegen der Umfangs und Enumeration der beteiligten Prozesse
    Es wird eine Liste aller für die Lösung des Problems notwendigen Prozesse definiert. Hier werden insbesondere vorhanden Prozessbeschreibungen genutzt.
  2. Festlegung der Prozessgrenzen
    Jeder Prozess muss gegenüber allen anderen klar abgegrenzt werden. Das gilt insbesondere für Prozesse, die außerhalb des festgelegten Umfangs stehen.
  3. Bestimmung der Prozessziele (mit ggf. strategischer Relevanz)
    Für jeden (Teil)Prozess wird die Aufgabe spezifiziert, die Materie, Energie oder Information umformt, transportiert oder speichert.
  4. Festlegen aller Schnittstellen
    Qua definitionem hat jeder Prozess mindestens eine Schnittelle zum vorgelagerten Prozess (Input, Quelle, Leistungssender, Lieferanten) und zum nachgelagerten Prozess (Output, Senke, Kunden, Leistungsempfänger). 
  5. Festlegen der Verbesserungen
    Für jeden einzelnen Prozess wird bestimmt, was verändert werden muss, um die Ausgangssituation (Anlass des Projektes) zu verbessern.

Will man also einzelne Prozesse identifizieren, dann bedarf es einer Konstruktions- bzw. Entwurfsleistung. Zwei grundsätzliche Vorgehensweisen bieten sich an: Bottom-Up und Top-Down.

Der Bottom-Up Ansatz geht von der untersten Prozessebene aus, auf der operative Aktivitäten ablaufen. Diese werden nach informations-, ablauf-, kostentechnischen oder organisatorischen Gesichtspunkten zu Teilprozessen bis hin zu Geschäftsprozessen zusammengefasst. Damit wird die Ist-Situation abgebildet. Vorteile bietet der Ansatz, wenn das Prozesswissen der Beteiligten in die Prozessidentifikation einfließen soll. Für eine grundlegende Neugestaltung ist diese Vorgehensweise eher ungeeignet.  

Geht man Top-Down vor, so ist der Ausgangspunkt die Gesamtaufgabe, die dann schrittweise in Teilprozesse zerlegt wird. Dieses Vorgehen wird bis auf die unterste Ebene einzelner operativer Tätigkeiten durchgeführt. Vorteile liegen unter anderem darin, dass Redundanzen, Überschneidungen und Aktivitäten, die nicht der gestellten Aufgabe dienen einfacher aufgedeckt werden. Zudem erfordert Top-Down-Vorgehen in der Regel weniger Aufwand und Zeit. 

Für ein funktionsfähiges Ergebnis sind beide Ansätze notwendig.

Übersicht

  1. Oft müssen Codierungen gewechselt werden: LogicSim Schaltnetze
  2. Ohne Zähler läuft nichts: LogicSim Zähler-Schaltungen
  3. Alles hat seine Zeit: Zustandssteuerungen (mit Motorsimlation)
  4. (du bist hier) Ampelschaltungen und Bytes über eine Leitung?
  5. Manches ist einfach rätselhaft: Das Zahlenschloss und das Witzik Rätsel 



Kommentare