Wissensbasis

In diesem Abschnitt möchten wir Ihnen erklären, eine Vorstellung, und auch, um unsere Vision über die Software-Entwicklung zu teilen. Wir hoffen, dass dieses Wissen nützlich für euch ist, und macht vorgestellte Konzepte und Themen die mit Software-Entwicklung verbunden sind zu verstehen. Wenn Sie möchten, so dass wir eine andere Idee oder Bedenken erklären, kontaktieren Sie sich bitte mit uns.

Was ist die funktionale Spezifikation? Wie sieht solches Dokument aus, was es enthalten soll?

Die funktionale Spezifikation ist das wichtigste Dokument in der Software-Entwicklung. Seine Schöpfung erfordert häufig viel Zeit, aber es lohnt sich zu opfern. Dies ist die Planungsphase des Projekts und die Zeit, als Sie sollten herausfinden, welches System wir aufbauen wollen, was Ihre Ziele sind und was zu verfolgen eine zu dienen. Spezifikation ist ein Dokument, dessen Menge ist abhängig von: den Preis der Projektlaufzeiten und die Zufriedenheit der Software. Es sollte berücksichtigt werden, dass die Veränderungen nach dem Ende des Projekts werden wird teurer und oft vielleicht sogar unmöglich sein, so sollten Sie vor allem zu überdenken. Kurz machte die Angabe, kann wiederum eine unzureichende Preisgestaltung, die letztlich in Unzufriedenheit auf beiden Seiten des Vertrages zur Folge führen.

Um die Spezifikation die Grundlage für die Bewertung bilden könnte, sollte sie mindestens folgende Angaben enthalten:

Bezeichnung vollständiger Palette von Daten verfügt das System über einen Speicher (mit Reichweiten Richtigkeit der Daten). Definieren von Datenquellen- wer führt die ein, was für Werte akzeptabel sind, welche Daten das System generiert. Im Einzelnen:

  1. Liste von Objekten, wer wird das System betreiben (Firma, Kunde, Betreiber…).
  2. Für jede Art von Objekt eine vollständige Liste der Parameter, die den Gegenstand (der Parameter-Typ, der Bereich von Daten, Informationen, ob das Feld ist obligatorisch …) zusammen mit potenziellen Abhängigkeiten zwischen Parametern (zum Beispiel, wenn der Parameter A den Wert „Nein“ ist, werden die Parameter B und C sind nicht wichtig).

Erstellen einer Liste der vollen Funktionalität. Für jede der Funktionen soll:

  1. Identifizieren Sie Eingabeparameter und die erwarteten Ergebnisse.
  2. Identifizieren Mechanismen und Datenverarbeitungsalgorithmen.
  3. Ermittlung von Möglichkeiten, um Daten zu validieren.
  4. Identifizieren Unterstützung für fehlerhaften Situation (nicht eingeführt die obligatorischen Daten, eingegebenen Daten außerhalb des Bereichs…).
  5. Definieren Sie die Benutzertypen und ihre Erlaubnis zu anderen Empfänger-Funktionalität.

Beschreibung und Diskussion über der Eigenschaften des gewünschten Benutzeroberfläche zu diskutieren (ohne Grafik):

  1. Definieren Sie eine vollständige Liste der Formen.
  2. Für jeweils Matte eine Liste definieren, und die vorläufige Verteilung der Komponenten (Tabellen, Buttons, Eingabefelder).
  3. Zuordnen Funktionalität für die oben definierte Komponenten.
  4. Definieren Sie alle ungewöhnliches Verhalten der Steuerkonsolen.

Die Spezifikation sollte mit einer Beschreibung der ersten Fenster auf der Benutzer-Eingabe beginnen, was er sieht, was tun können, was sie führen wird, oder was es braucht, um Größen- und am Ende mit einer Beschreibung der letzteren. Außerdem sollte beschrieben werden alle Mechanismen, deren Benutzer sieht-Berechnung von Daten, Algorithmen, Datenspeicherung Weise die Arten von Benutzern, Nutzungsprofile etc.

Spezielle Software gegen Software-ready ``boxed``?

Spezielle Software

Die meisten Software werden als ein Exemplar und an eine bestimmte Bestellung entwickelt. Die Produktionskosten sind viel höher als der Kauf des Box-Progamm’s, aber das scheint eng an den Bedürfnissen unserer Gesellschaft oder Einrichtung angepasst werden. Dedicated-Programme sind für Unternehmen unterschiedlicher Größe und die in verschiedenen Branchen erstellt. Software (Software derzeit auf dem PC läuft), Web-Anwendungen (Software derzeit auf dem Internet laufen) oder Firmware (Software, die auf den Geräten arbeiten): Sie können jede Art von Software auf die eigenen Bedürfnisse zu schaffen. Sehr oft verbindet auch verschiedene Plattformen, um ein Cross-Plattform-Synergien, besser und effizienten Fluss von Daten und Informationen, eine klarere Visualisierung von Daten, oder, um einen glatteren Zugang zu Informationen zu erhalten, zu erreichen.

Vorteile von spezieller Software:

  • Entwickelt genau nach Kundenwunsch
  • In jeder Technologie gebaut
  • Ideal auf die Bedürfnisse des Unternehmens abgestimmt, anpassend an die Prozesse und Aufgaben
  • Benutzerfreundlich, weil es perfekt auf die Nutzer abgestimmt
  • Sie können mit anderen Systemen in das Unternehmen integriert werden
  • Sie können leicht erweitert werden, entwickelt, verbessert
  • Aktivitäten des Unternehmens rationalisieren in verschiedenen Bereichen
  • Erhöhen die Effizienz der Arbeit, seine Leistung, die Fähigkeit zu kontrollieren, und dank diesem erbauen einen Wettbewerbsvorteil

Software ready „boxed“

Diese Programme sind in vielen Exemplaren an vielen Kunden verkauft. In diesem Zusammenhang kann der Empfänger der Ware vielen verschiedenen Unternehmen zu sein, und jeder von ihnen wird eine leicht unterschiedliche Bedürfnisse, Ziele und Aufgaben haben – Lösung „Boxed“ muss eine Art von Kompromiss zwischen den unterschiedlichen Anforderungen der vielen Kunden zu sein. Also fertige Software erfüllt gesamte Bedürfnisse, verbessert bestimmte zwingende Prozesse -, die solche Aufgaben erfüllt, die für eine große Gruppe von verschiedenen Stilrichtungen der Kunden konsequent sein kann. Eine solche Lösung ist jedoch nicht flexibel genug, erfüllt nicht die spezifischen Kunden-Anforderungen, erschwert das erfüllen, ein solches Produkt zu entwickeln oder zu verbessern, es kann das Problem auch die Integration dieser Lösung mit anderen Systemen im Unternehmen bereits in Betrieb sein. Auf dem Markt gibt es viele verschiedene Produkte „eingerahmt“, die in einer Vielzahl von Technologien erstellt werden, werden die Implementierung verschiedener Funktionen und den Bedürfnissen der Kunden in verschiedenen Branchen. Und weil die Lösung für viele Unternehmen verkauft werden, die Kosten der Produktion wurde mit vielen Kunden im Zusammenhang mit dem der Einheitspreis mild sein kann, zu verbreiten. Es können bereits viel höhere Kosten bei ihre Anpassung oder Entwicklung werden.

Vorteile der „boxed“ – Software

  • Niedrige Anschaffungskosten
  • Schnelle Implementierungszeit
  • Perfekte Funktion in Unternehmen, die keine spezifische Anforderungen haben
  • Einige der Firmen die, die „boxed“-Systeme verkaufen, in Einkaufs-Rahmender stellen die Software-Updates frei zur Verfügung

Wann ein ``boxed`` Produkt kaufen und wann die Erstellung von spezieller Software beauftragen?

Antwort auf diese Frage hängt davon ab, was wir wirklich suchen und wie wir zu Kompromissen neigen. Anwendungen bereit – „boxed“ wird nie zu 100% unsere Erwartungen erfüllen, aber ihre überwältigende Vorteile sind die niedrigen Anschaffungskosten und schnelle Bereitstellungszeit. Wenn auf dem Markt wird die Standardsoftware, die die spezifischen Anforderungen des Unternehmens fehlen, könnte sich lohnen, in Betracht nehmen, eine spezielle Software zu programmieren.

Bevor man die Erstellung von spezieller Software beauftragt

Vor der Freigabe zu erstellen ein Programm gewidmet IT-Unternehmen sollte man prüfen, ob in der Tat der Schaffung eines eigenen System mehr Vorteile als der Kauf von fertigen Lösungen zu bringen, unter Berücksichtigung der bei erhöhten Herstellungskosten der eigenen Software.

Man muss sich fragen, was man wirklich will, was für Ziele zu realisieren hat, dass Prozesse zu rationalisieren, die man in dieses System verwendet (Administrator, Management-, Mitarbeiter, oder Client) – ob jede Person wird andere Daten aus dem System brauchen, und ob alle haben Zugang zu allen Informationen, ob jeder dieser Menschen werden das System nutzen: nur für die Anzeige von Daten und auch die Daten bearbeitet werden. Es ist wichtig, zu verfolgen genau, wie Besitzer Prozesse sind im Moment in der Firma – ein neues System sollte ein Spiegelbild der aktuellen Prozesse zu sein, oder vielleicht als Ergebnis verbessert werden sollte, und nie zu behindern oder erschweren.

Was unterscheidet Web-Software vom PC aus, wenn Internet-Lösungen lohnt zu tun, und wenn stationär?

Software Web / Internet-Anwendungen werden immer beliebter und es scheint, dass die meisten der Produkte werden nur Informationen auf dieser Seite zu streben. Eigentlich sind alle Anwendungen, die Sie in der heutigen Web-Technologien (Internet, oder so genannte Technologie „Thin Client“ aus dem Englischen Thin Client) erstellen. Der Hauptvorteil ist, dass Sie mit dieser Anwendung jederzeit nutzen und an jedem Ort kaum mit verschiedenen Computern können. Vorausgesetzt jedoch, den Zugang zum Internet haben. Wir brauchen nicht, um die Anwendung auf Ihrem Computer installieren, so gibt es keine Bedenken mit den Problemen der Inkonsistenz erscheint mit der Version des Betriebssystems, die Anwendung funktioniert per Fernbedienung (auf dem Server installiert ist). Kleinere Probleme werden auf Update-Seite oder mit neueren Versionen der Software – dauert meist spontan und ist keine Aktivität von uns erforderlich. Nur das, was wir brauchen, um diese Art der Anwendung zu nutzen ist Browser (Internet Explorer, Mozilla, Chrome, oder anders), Computer-und Internet-Zugang. Web Apps sind bequem zu bedienen, ist wichtig, dass wir einem freiem Zugang zum Internet haben, im Falle von Problemen mit der Internet-Anschluss oder langsam arbeiten, oder überhaupt nicht funktionieren.

Im Gegensatz dazu ist der PC ein Programm auf Ihrem Computer (z. B. Word, Excel, Photoshop), und nur für sie verfügbar installiert. Oft werden solche Software hat eine höhere Hardware-Anforderungen, sondern macht uns von der ständigen Zugang zum Internet unabhängig. Die meisten dieser Art von Software ist für die Visualisierung von Daten, die für einige Geräte (wie z. B. medizinische Geräte, Fabrik Maschinen, Geräte, die einen Prozessor in sich selbst und kann Beutel einige Informationen, um sie zu exportieren) und diese Daten zu verwalten erhoben werden, die Interpretation dieser Daten usw. PC-Software erstellt Ankündigung auch im Falle von sehr großen Notwendigkeit des Datenschutzes (zum Beispiel Banksysteme), obwohl ein Teil der Daten bereits angezeigt werden, über das Web. Der andere Ort, wo es immer noch häufig PC-Software verwendet wird, sind Systeme zur Unternehmensführung, nur weil sie oft entstehen Daten von verschiedenen Geräten, wo nicht in jedem Ort des Unternehmens ist der Zugang zum Internet vorhanden, und außerdem ist eine weitere Pflicht, sogar größeres Gefühl der Kontrolle über das System, die lokal installiert sind (obwohl in diesem Segment langsam erscheinen, Web-Lösungen).

Modell des vollständigen Software-Entwicklungszyklus

Im Folgenden präsentieren wir ein Modell der Software-Entwicklungszyklus, die wir in der täglichen Arbeit benutzen:

  • Analyse der Kundenbedürfnisse – Analyse der Kundenanforderungen auf einem neuen System.
  • Spezifikation – Vorbereitung der Dokumentation, die detailliert die Anforderungen des Kunden.
  • Projekt – Ausführung des Projekts und Vorbereitung der Dokumentation seiner Build beschreibt.
  • Erstellen einer Software – Kodierung und Test-Module.
  • Überprüfung – Integration und Erprobung eines Ganzen.
  • Umsetzung – Lieferung und Produkteinführung

Klicken Sie auf das Bild, um die Details zu sehen.

Natürlich ist dies nur ein Modell und wird oft je nach Kundenbedarf geändert, die Besonderheiten des Projekts, technische Möglichkeiten, vorhandene Dokumentation etc. Die Grundidee bleibt die gleiche: Projektplannung