Unsere nichtmetallischen Wellrohre sind aus hochwertigem Nylon wie Polyamid 6 und 12, Polypropylen und Polyvinylidenfluorid gefertigt. Jede Art wird besonders modifiziert, um einzigartige Eigenschaften wie erhöhte Flexibilität, Haltbarkeit, Verwitterung und UVschutz zu zeigen, um nur einige zu nennen. Grip Lock-Rohre sind ideal für eine Vielzahl von Anwendungen und übertreffen die heutigen Industriestandards und Kundenerwartungen. Professionelle und optisch ästhetische Installationen und ein außergewöhnlicher mechanischer Schutz sind mit Grip Lock leicht zu erreichen. Grip Lock Beschläge sind in verschiedenen Karosseriekonfigurationen erhältlich. Verstärken Sie praktisch alle Gewindegrößen-Amp-Typen, um sicherzustellen, dass Kundenanforderungen erfüllt werden können. Grip Lock Polyamid Beschläge verfügen über eine revolutionäre integrierte Sperrkragen, die eine hochwertige, einfach zu bedienende und sichere Verbindung bietet. Klicken Sie hier, um die Montageanleitung anzuzeigen. Um eine komplette Draht - und Kabelschutzlösung zur Verfügung zu stellen, produziert Moltec eine Reihe von Drehverschraubungen und Steckverbindern aus Metall. Kunden können aus verschiedenen Körper-Konfigurationen und Gewinde wählen. Die hochwertigen formulierten Polyamid-Beschläge verfügen über eine integrierte schwarz eloxierte oder stromlos vernickelte Aluminium-Schwenkkomponente. Die behandelten Drehbeschläge haben eine hervorragende Schlag - und Korrosionsbeständigkeit. Die Griffschloßsysteme bieten robuste Befestigungsmöglichkeiten für eine einfache Montage der Rohre. Kompliment an die Grip Lock Beschläge und System-Support ist eine Reihe von bemerkenswerten Zubehör, die eine komplette Linie von Draht-und Kabelschutz Produkte bieten. Unsere Wandlerübergangsadapter, Rohrleitungsreduzierer, Zugentlastungsdichtungen, O-Ringe, Kontermuttern, Dichtungsscheiben und Systemwerkzeuge sorgen für die Sicherstellung und Abdichtung von Anlagen. Services Überblick Designentwicklung Mit Hilfe robuster Engineering-Tools bieten unsere Ingenieure Lösungen im gesamten Produktentwicklungslebenszyklus. Von der konzeptionellen Planung über die industrielle und mechanische Konstruktion bis hin zur CAD-Modellierung und Detaillierung bis hin zur Simulation, Analyse Manufacturing Services Moltec Machine hat die Fähigkeit, Produkte aus einer Vielzahl von Materialien wie Nylon, Aluminium, Stahl, Messing und vieles mehr mit verschiedenen Plattierungen und Anodisierungen herzustellen Optionen nach Bedarf. Moltec Machine hat einen Ruf für Custom Assemblies Arbeiten mit Cross-funktionalen Teams wie Industrial Design, Mechanik und Elektroingenieure, liefert Moltec Lösungen, die in der Praxis verwurzelt sind. Aus diesem Grund werden unsere Kunden immer wieder für unsere Unterstützung zurückkehren und Moltec International ist Ihre beste Quelle für innovative Draht - und Kabelschutzprodukte. Wir bieten eine komplette Linie von Wellpappe-Nylon-Rohrleitungen, ein Sortiment von Armaturen und Steckverbindern, sowie System-Support und Zubehör für alle Anforderungen zu erfüllen. Unsere Konstruktions - und Ingenieurleistungen, verbunden mit unseren Fertigungskapazitäten, ermöglichen die Herstellung von Adaptern, Spezialbeschlägen und Steckverbindern, Kabelbäumen und elektrischen Baugruppen. Wir sind bestrebt, die komplettesten Kabel - und Kabelschutzlösungen anzubieten. Newsletter AnmeldenWas wirklich in einer funktionalen Spezifikation geht Es gibt viele Informationen über die Interweb über, wie man eine funktionale Spezifikation (FS für kurze, aka Softwareanforderungen Spezifikation, System Spezifikation, Produktspezifikation schreiben. Was habe ich gekämpft, um zu finden, obwohl, ist) Eine gute, detaillierte Beschreibung dessen, was eigentlich in einer FS und insbesondere auf der Ebene der Details gehen sollte. Wenn gefragt, diese Frage, die meisten BAs Antwort, 8220it hängt8221.Während dies wahr ist, ich glaube, wir können es durch das Zeichnen zu verbessern Einige klare Grenzen um, wie viel Details erlaubt ist und wie viel zu viel ist. Ich stelle daher eine Spezifikation für eine funktionale Spezifikation. Dies ist meine eigene Ansicht und keineswegs ein Industriestandard, aber es funktioniert für mich. Was Dokument sind Wir Ich spreche hier nicht von einem High-Level-Business-Anforderungen Dokument oder eine Wunschliste der Stakeholder Bedürfnisse, die möglicherweise erreicht werden kann oder auch nicht erreichbar, und die möglicherweise sogar miteinander im Konflikt. Das Dokument I8217m hier reden ist das Ergebnis der Synthese dieser Bedürfnisse in eine kohärente Sicht auf das, was das System tatsächlich sein wird. Dies ist das Dokument, das Sie: Geben Sie den Entwicklern, damit sie wissen, was zu bauen Gib den Testern, damit sie wissen, welche Tests ausgeführt werden Geben Sie an die Stakeholder (und erhalten sie zu genehmigen), damit sie wissen, was sie bekommen Jetzt vor dem Start Immer alle agile auf me8230no, I8217m nicht befürworten ein 8220wrow es über die wall8221 Ansatz zur Lieferung, und I8217ll sprechen später über die verschiedenen Formen, die ein FS kann. Ich möchte nur sicher sein, dass wir alle über die gleiche Sache sprechen. Oh, und während wir dran sind, nennen wir es nicht ein Dokument. Es könnte nicht eine einzige monolithische Text-und-Diagramme Epos. So let8217s nennen es einfach eine Sache. Oder noch besser, let8217s gehen Plural: Dinge. I8217m auch in erster Linie über die Spezifikation für ein System, das gebaut werden soll. Eine solche Spezifikation ist im allgemeinen nicht für ein System geeignet, das von dem Regal gekauft werden soll. Eine einfache Definition einer funktionalen Spezifikation OK, jetzt haben wir die Präambel aus dem Weg, hier ist meine einfache Definition einer funktionalen Spezifikation: Eine funktionelle Spezifikation eines (Computer-) Systems beschreibt das äußerlich sichtbare Verhalten dieses Systems. Diese Definition könnte ein wenig zu einfach klingen, um wahr zu sein. Sicher da8217s mehr zu einem System als gerade, was die Benutzer sehen. Du hast Recht, es gibt. Und sobald ich meine Definitionen von System und äußerlich sichtbarem Verhalten (speziell, ich don8217t bedeuten, nur Anwendungsfälle) zu erörtern, hoffentlich werden Sie mit mir übereinstimmen, dass die Definition vollständig und präzise ist. Was ist ein System Ich mag an ein (Computer-) System als Blackbox denken. Die Black Box hat zwei interessante Features: Schnittstellen. Durch die externe Einheiten über eine Reihe von Ein - und Ausgängen mit dem System in Wechselwirkung treten können. Es gibt zwei Arten von externen Einheiten 8211 Menschen und andere Systeme (auch gemeinsam als Akteure des Systems bezeichnet), und wir müssen uns um sie beide Gedanken machen. Bundesland . Die sich durch Interaktionen mit den Akteuren verändert. Denken Sie dies als das system8217s Speicher, in dem es sich erinnert (oder speichert) Daten 8211, die üblicherweise als eine Datenbank implementiert sind. Diese einfache Definition gilt für so ziemlich jedes System, das Sie sich vorstellen können. Alle Systeme verfügen über Schnittstellen 8211 ohne Schnittstellen, ein System ist nur eine ziemlich uninteressante Blackbox Die meisten Systeme haben (menschliche) Benutzeroberflächen, aber I8217ve arbeitete auch an vielen Datenverarbeitungssystemen ohne UIs 8211 sie nehmen nur Daten von einem System, Prozess Es und übergeben es an ein anderes System. Einige Systeme haben keine Systemschnittstellen, aber in diesen Tagen der End-to-End-Integration, die meisten Systeme tun. Einige sehr einfache Systeme haben keinen Zustand, obwohl die meisten interessanten Systeme (jedes System, das Daten verwaltet hat Zustand hat). Eines der wichtigsten Dinge, um für ein System unter Design klar zu werden, ist, wo die Systemgrenze liegt, und Sie können dies leicht tun, indem Sie seine Schnittstellen mit der Außenwelt identifizieren. Hier ist ein einfaches Diagramm eines Systems (genannt eShop), das seine Schnittstellen und die Akteure zeigt, die diese Schnittstellen verwenden. Ich nenne dies ein Kontextdiagramm. Ein Beispielkontextdiagramm Zwei Schlüsselelemente 8211 Funktionen und Daten Bewaffnet mit meiner Definition eines Systems kann ich nun sagen, dass es zwei Schlüsselelemente zu einer funktionalen Spezifikation gibt: Funktionen 8211 eine Beschreibung der Wechselwirkungen zwischen dem System und seinem (Mensch und System ) Schauspieler Daten 8211 eine Beschreibung des Zustandes des Systems Sobald Sie alle Funktionen und alle Daten (auf die richtige Detailstufe) beschrieben haben, sind Sie fertig 8211 einfach wie die Beschreibungsfunktionen Die Funktionen eines Systems sind die Interaktionen, die Kann zwischen dem System und seinen Akteuren (über die Schnittstellen) auftreten. Eine Interaktion ist eine Sequenz von Akteureingaben (z. B. ein Benutzer, der auf eine Maustaste klickt) und Systemausgaben (z. B. Anzeigen von einigen Daten auf dem Bildschirm des Benutzers 87217). Typischerweise versucht der Akteur, ein Ziel zu erreichen (loggen, Daten suchen, Daten aktualisieren, eine Berechnung durchführen usw.). Ich benutze Use Cases als den wichtigsten Anker für die Beschreibung einer system8217s-Funktionen. Sie sind, meiner Meinung nach, das perfekte Format für die Beschreibung der Interaktionen zwischen einem Akteur und dem System. Laura Brandenburg hat eine ähnliche Liebesbeziehung mit Anwendungsfällen. I8217m nicht zu erklären, Anwendungsfälle in vollem Umfang (Sie können hier klicken, um zu lesen, was ein Use Case ist), aber nur für den Fall, dass you8217re neu in diesem Spiel, sieht ein Anwendungsfall sieht etwa so aus: Use Case 1: User Logs On User startet Die Anwendung System fordert Benutzer für Anmeldedetails (Benutzername und Kennwort) Benutzer gibt Anmeldeinformationen ein und übermittelt sie Systemanforderungen user8217s-Anmeldeinformationen aus dem externen Einzelanmelder-Verzeichnis Das System überprüft, ob die von user8217 eingegebenen Anmeldedetails übereinstimmen Aus dem Verzeichnis System zeigt das Hauptmenü an Alternative Flow 4a: Falsche Anmeldeinformationen System sagt dem Benutzer, dass die Anmeldung fehlgeschlagen ist Return to Main Flow step 2 Alternative Flow 4b: Benutzerkonto gesperrt Das System teilt dem Benutzer mit, dass sein Account gesperrt ist Rufen Sie die Helpline zurück Zum Main Flow Schritt 2 I8217ve haben einige der wichtigsten Teile meines Anwendungsfalles für die Kürze (zB Vor - und Nachbedingungen) weggelassen, aber Sie sollten sehen können, dass es die Reihenfolge der Eingaben beschreibt (durch den Benutzer ) Und gibt (durch das System) für eine gegebene Funktion aus. Für weitere Informationen über Anwendungsfälle lesen Sie Schreiben effektive Use Cases von Alistair Cockburn. Beachten Sie, dass der Beispiel-Use-Fall Interaktionen sowohl mit einem menschlichen Benutzer als auch mit einem externen System (dem Single-Sign-On-Verzeichnis) darstellt. Damit Ihre Anwendungsfälle vollständig abgeschlossen sind, müssen Sie alle Interaktionen über alle Schnittstellen abdecken, seien es menschliche Benutzerschnittstellen oder Systemschnittstellen, insbesondere alle 8220back-end8221-Systeme. It8217s auch wichtig zu verstehen, dass Anwendungsfälle nicht geben eine detaillierte detaillierte Beschreibung der system8217s Funktionen. Vielmehr sind sie der Anker für die Funktionen, um die die anderen Details hinzugefügt werden können. Adriana Beal hat einige zusätzliche Kommentare zu diesem Thema in diesem Artikel. Update 20102014 Eine Alternative zur Verwendung von Fällen, die zunehmend an Popularität gewinnt (vor allem in agilen Kreisen), ist die 8220gherkin8221-Notation, die auch als gegeben-wenn-dann Szenarien bekannt ist und stark mit der Verhaltens-getriebenen Entwicklung (BDD) und der Test Driven Development (TDD) verknüpft ist. Soweit ich betroffen bin, gegeben-wenn-dann Szenarien sind ziemlich gleichbedeutend mit Anwendungsfällen, wie ich in diesem Artikel zu diskutieren. Funktionen 8211 Wie viel Detail ist erlaubt OK, we8217ve getan den leichten Teil 8211 die meisten Menschen zustimmen, dass Fälle verwenden Felsen, und alle I8217ve bisher so weit ist die Einstellung der Szene. Der schwierige Teil ist zu entscheiden, wie viel Detail entweder in den Anwendungsfällen oder neben ihnen gehören. Hier8217s meine einfache Antwort: Sie dürfen alle Details von außen sichtbares Verhalten des Systems (einschließlich Verhalten über Systemschnittstellen) umfassen. Sie sind nicht berechtigt, Angaben über die interne Funktionsweise des Systems zu machen. Beispielsweise können Sie: Benutzeroberflächendetails bis hin zum letzten Pixel und Farbton eingeben Größe und zulässige Inhalte von Dateneingabefeldern Ob eine bestimmte Eingabesteuerung als Optionsfelder oder ein Dropdown-Menü Exakter Text implementiert ist Der Fehlermeldungen Komplexe Geschäftsregeln und Algorithmen Unterstützte Webbrowser, Client-Betriebssysteme, Bildschirmgrößen Einige Leute werden argumentieren, dass einige der obigen Beispiele Aspekte des Designs sind. Und haben keinen Platz in einer Anforderungen Spezifikation. There8217s eine lange Debatte zu diesem Thema in meinem vorherigen Artikel, Requirements Versus Design: It8217s All Design. Aber was auch immer die Terminologie, die wir verwenden, meine Erfahrung ist, dass Business Stakeholder, Entwickler und Tester kümmern sich um diese Details, und damit haben sie jedes Recht, aufgenommen werden. Insbesondere könnte das UX-Design in ein separates Dokument gestellt werden, vielleicht sogar von einer separaten Person (einem UX-Designer) produziert, aber in meinem Weltbild ist es immer noch Teil des äußerlich sichtbaren Verhaltens und damit Teil dieses 8220thing8221 Oder 8220things8221, dass ich nenne eine funktionale Spezifikation. Hier sind einige weitere Dinge, die Sie zulassen können: Exaktes Format eines Systemprotokolls Physisches Format einer Systemschnittstelle Diese sind etwas umstritten, weil sie für unsere primären Geschäftsbeteiligten wenig Interesse haben und sicherlich einen 8220technical8221-Aspekt haben. Dennoch sind sie von außen sichtbares Verhalten des Systems und interessieren sich für andere Stakeholder 8211 a sys admin oder die Entwickler eines externen Systems. Ebenfalls erlaubt sind die äußerlich sichtbaren Qualitäten des Systems, wie zB: Performance (Systemreaktionszeiten) Volumetrics (Anzahl gleichzeitiger Benutzer) 8211 aktuell und künftig Parallelitätsmerkmale Sicherheitsmerkmale (notorisch schwierig, effektiv zu spezifizieren) Solche Qualitäten werden üblicherweise als bezeichnet Nicht-funktionale Anforderungen 8211 ein Begriff, den ich wirklich nicht mag, weil sie so offensichtlich nicht funktionslos sind. Aber der Begriff ist ziemlich-viel allgegenwärtig, so dass ich glaube, wir hängen mit ihm. Beschreiben von Daten Zuerst lösen let8217s einen Widerspruch. I8217ve sagte, dass die FS das äußerlich sichtbare Verhalten des Systems beschreiben sollte. Aber der system8217s Zustand isn8217t extern sichtbar (es sei denn, Sie gehen stochern in der Datenbank), also warum es enthalten Die Antwort ist, dass der Zustand system8217s hat einen wichtigen Einfluss auf seine Funktionen. Eine Funktion, die den Zustand des Systems8217s aktualisiert, hat eine verzögerte Wirkung dahingehend, dass sie jede andere Funktion beeinflusst, die dieselben Daten ausgibt. Funktionen und Daten sind miteinander verflochten und man kann wirklich beschreiben eine ohne die anderen. Die übliche Weise, Systemdaten zu beschreiben, ist in Form von (logischen) Datenentitäten. Ein Unternehmen ist ein 8220thing8221 von Interesse (ein Kunde, eine Adresse, ein Auftrag, ein Produkt). Entitäten haben Attribute (ein Kunde hat einen Vornamen, einen Nachnamen, ein Geburtsdatum usw.). Unternehmen haben auch Beziehungen zueinander (ein Kunde hat eine oder mehrere Lieferadressen, ein Kunde hat null oder mehr Aufträge, ein Auftrag besteht aus einem oder mehreren Produkten). Daten 8211 Wie viel Detail zulässig ist Hier8217s, welches Detail ich für Daten zulasse: Entitätsname (so dass es eindeutig bezeichnet werden kann) Entitätsbeschreibung (Erklärung, was die Entität tatsächlich 8211 nicht immer offensichtlich ist) Attribute: Name Beschreibung (nochmal , Nicht immer offensichtlich) Typ und zulässige Werte wie: String, max 50 Zeichen Integer von 0 bis 60.000 oder leer Einer von Male, Female oder Not Specified Beziehungen zu anderen Entities: Bedeutung der Beziehung (zB Heimatadresse, Lieferadresse) Multiplicity (One-to-one, one-to-many, Null-oder-one-to-one etc.) Beachten Sie, dass die oben genannten sind eher logische als physikalische Definitionen. Beispielsweise könnte ein logischer Typ von 8220Male, Female oder Not Specified8221 als NUMBER implementiert werden, wobei 1Male, 2Female, 0Not Specified oder es als nullable VARCHAR implementiert werden kann, wobei 8220M8221Male, 8220F8221Female und NULLNot Specified Physical Datenbankdefinitionen (Tabellennamen, Spaltennamen, Spaltentypen) 8220Entities8221, die eigentlich Datenbanktabellen sind, die viele-zu-viele-Beziehungen implementieren. So, wie viel Detail ich eigentlich einschließe Bisher habe ich die Detailebene angegeben, die meiner Meinung nach in einer FS erlaubt ist . Die naheliegende nächste Frage ist, ob Sie tatsächlich notieren müssen alle Details. Und hier8217s, wo wir wieder auf die ursprüngliche Antwort 8211 8220it hängt8221. Es hängt von einer Vielzahl von Faktoren ab, wie zum Beispiel: Wie viel Ihre Geschäftsinteressenten über die Details kümmern Wie viel Detail Ihre Entwickler Sie geben möchten (oder alternativ, wie viel Sie den Entwicklern glauben, etwas Sinnvolles in der Abwesenheit von Details zu tun) Wie viel Wenn Sie ein neues System oder Verbesserungen für ein bestehendes System angeben 8211 Ein bestehendes System verfügt über vorhandene Muster, von denen angenommen werden kann, dass sie auf Erweiterungen angewendet werden können, wie z. B. Look-Amp-Gefühl, Datenvalidierungsregeln und so weiter Sie verlassen sich auf nicht-schriftliche Kommunikation Meine eigene Erfahrung ist, dass jede Organisation anders ist, und für jede neue Aufgabe muss ich die entsprechende Detailebene, die geschrieben werden muss, zu finden. Hier kommt es darauf an, was passiert, wenn ich es falsch mache: Ich gebe zu wenig Detail und die Entwickler machen eine 8220wrong8221 Annahme Ich gebe zu viel Detail, und ich verbringe mehr Zeit als nötig schreiben es alle unten Ich gebe zu wenig Detail und die Tester kommen immer wieder für mehr Detail Ich gebe zu viel Detail und die Entwickler und Tester arbeiten genau auf spec anstatt ihre Mängel herauszufordern Wie viele Details ich in meine schriftliche Spezifikation einschließen oder auslassen, ich bin immer klar, wo die Grenze meiner Verantwortlichkeit liegt 8211 I Bin verantwortlich für alle äußerlich sichtbaren Verhalten des Systems 8211 so, wenn ich beschließen, einige Details zu verlassen, akzeptiere ich, dass ich den Entwicklern einige freie Herrschaft, aber dass it8217s mein Problem geben, wenn der Stakeholder doesn8217t wie es Und was Format Do I Schreiben Sie es unten Im bis jetzt habe ich über eine Sache gesprochen, die eine Funktionale Spezifikation genannt wird, und Sie konnten angenommen haben, dass ich an ein einzelnes 8220traditonal8221 Text-und-Diagrammdokument (wie möglicherweise in Microsoft Word geschrieben) denke. Aber natürlich gibt es viele Alternativen, vor allem, wenn Sie beginnen, auf agile Ansätze. Hier sind ein paar Optionen: Ein formales Anforderungsmanagement-Tool wie Rational Rose Use-Fälle in einer Tabellenkalkulation kombiniert mit einem HTML-Prototyp (siehe mein früherer Artikel, Agile Functional Specification) Anwendungsfälle, Daten - und Geschäftsregeln in einem Dokument, UX-Design In einem separaten Dokument (evtl. produziert von einem separaten UX-Designer) Anwenderstorys und Akzeptanzkriterien auf Karteikarten gezackt (nach XP) Ein grafisches Format mit einem Zeichenwerkzeug wie Microsoft Visio (etwas, mit dem ich gerade experimentiere) Unabhängig davon Das verwendete Format, die gleichen Regeln über Art des Inhalts und Detaillierungsgrad noch gelten. Ein Curveball oder zwei Bisher habe ich gesagt, dass eine funktionale Spezifikation nur äußerlich sichtbares Verhalten beschreiben sollte. Ich habe bereits eine kleine Ausnahme von dieser Regel durch den Systemzustand, die Art von internen ist. Es gibt einige andere Ausnahmen, und sie gelten in Fällen, in denen es wichtig ist, die (interne technische) Gestaltung des Systems zu beschränken. Hier ein paar Beispiele: Für ein Softwareprodukt, das die Plattform (en) definiert, auf der die Software implementiert werden muss (zB 8220kompatibel mit Windows Vista und Windows 8 mit 2GB RAM8221) Erweiterungsvoraussetzungen 8211 wie einfach es ist Muss es sein, das System zu erweitern oder zu verändern. Das ist ein Thema für sich. Ich versuche, diese sehr zu behandeln als Ausnahmen von der Regel und nur dort, wo sie unbedingt erforderlich sind. Zusammenfassend Kurz zusammengefasst: Wenn ein System eine Black Box mit (menschlichen und System-) Akteuren ist, die mit ihm über Schnittstellen interagieren, dann8230 Eine funktionale Spezifikation beschreibt das äußerlich sichtbare Verhalten des Systems Es gibt zwei Schlüsselelemente 8211 Funktionen und Daten Funktionen sind Allgemein verankert um Anwendungsfälle Der theoretische Umfang umfasst alle äußerlich sichtbares Verhalten, bis hin zu den letzten pixel8230 Aber wie viel Detail Sie tatsächlich include8230it hängt8230 Und Sie sind immer noch verantwortlich für alle Details, die Sie weglassen Weiterlesen There8217s mehr zu Business-Analyse Als nur schriftlich funktionale Spezifikationen. I8217ve versucht, den End-to-End-Prozess zu erfassen Ich folge in dem Artikel Business Analyst Designer-Methode. Und wenn Sie erlernen möchten, wie man setzt, was you8217ve gerade in der Praxis gelesen haben, möchten Sie vielleicht meinen Fernlernkurs betrachten. Teile das:
No comments:
Post a Comment