Fragensteller
Anwendungsentwicklungskosten

Allgemeine Diskussion
-
Guten Tag,wir planen eine Anwendungsentwicklung (Backend: MS-SQLServer) für eine Auftragsabwicklung (Kalukulation, Stückliste etc). Hat jemand Erfahrung, inwieweit sich etwa die Entwicklungskosten unterscheiden, wenn wir das Front-End in
a) MS-Access
b) Visual Studio als Windos-Application
c) ASP.Net als Web-Application
aufsetzen würden? Die Application soll nur im Firmennetz verfügbar sein.
Ich bin gespannt auf eure Antworten.
Thomas
- Typ geändert Ionut DumaModerator Freitag, 1. März 2013 15:36 Keine Ruckmeldung des Fragenstellender
Alle Antworten
-
Hallo Thomas,
darauf kann niemand eine seriöse Antwort geben.
Zum einen hängt es von der Komplexität der Anwendung ab.
Unter "Auftragsabwicklung" kann man sehr viel verstehen;
eine einfache mit einer Handvoll Eingaben oder etwas sehr komplexes (wie z. B. SAP ;).
Eine einfache Applikation kann z. B. mit MS Access (etwas) schneller erstellt werden,
mit steigendem Komplexität hat die Entwicklung unter Visual Studo Vorteile (Unit Tests uam.)Ebenso kommt es auf die Kompetenzen der damit betrauten Entwickler ab.
Haben die Entwickler Vergleichbares in der gewählten Umgebung schon einmal realisiert,
können sie dies schneller realisieren als wenn sie keine Erfahrung damit haben.
Sind sie in der Umgebung zudem unerfahren, so ist das Ergebnis kaum vorhersehbar.
Gruß Elmar
-
Hallo Elmar.
Es werden schon einige Eingaben notwendig sein, wobei je Eingabefeld im Hintergrund auch einige Berechnungen laufen werden, die auf dem SQL-Server als SP abgelegt sind. Für die Entwicklerkopmpetenz setzte ich natürlich gleichwertige Kompetenzen voraus.
Also zB. wenn ein erfahrener Access-Entwickler für dieses Projekt 50 Personentage benötigen würde, was würde ein ebenso erfahrener Entwickler für eine Wep- bzw. Windowsapplikation benötigen?
Viele Grüße
Thomas
-
Guten Tag,wir planen eine Anwendungsentwicklung (Backend: MS-SQLServer) für eine Auftragsabwicklung (Kalukulation, Stückliste etc). Hat jemand Erfahrung, inwieweit sich etwa die Entwicklungskosten unterscheiden, wenn wir das Front-End in
a) MS-Access
b) Visual Studio als Windos-Application
c) ASP.Net als Web-Application
aufsetzen würden? Die Application soll nur im Firmennetz verfügbar sein.
Ich bin gespannt auf eure Antworten.
Thomas
hat ganz von Erfahrungstand Deiner Entwicklergruppe ab.
es kann sein, dass bei einem Punkt die Applikation vielleicht schneller realisiert ist, das nuetzt Dir aber nichts, wenn Deine Entwickler das entsprechende Know-How nicht besitzen und erst sich aneignen muessen.
Aus obigem Aspekt wuerde ich mal sagen, dass keine serioese Aussage fuer Deine Situation gemacht werden kann - so wie es Elmar bereits geschrieben hat.
Vielleichst kannst Du noch etwas mehr Informationen nachliefern was den Erfahrungsstand Deiner Entwickler betrifft.
Zu Punkt b) : das kann ja irgendwas sein - welche Programmiersprache hast Du in Betracht gezogen?
Please use Mark as Answer if my post solved your problem and use Vote As Helpful if a post was useful.
-
Also zB. wenn ein erfahrener Access-Entwickler für dieses Projekt 50 Personentage benötigen würde, was würde ein ebenso erfahrener Entwickler für eine Wep- bzw. Windowsapplikation benötigen?
das haengt davon ab, was Du alles genau realisieren musst.
Z.b. hast Du nichts davon erwaehnt, ob der Kunde Reports generieren moechte und wie frei gestaltbar dies sein muessten.
Solche Funktionalitaeten sind meisten jedoch auch vorhanden oder lassen sich als Componenten einkaufen und dann liegt wieder das Problem darin, wie lange die Entwickler brauchen um es effizient zu handhaben.
Als Auftragsentwicklung hat doch der Auftraggeber eine gewisse Idee wie er die Sache implementiert haben moechte, der er vielleicht keine Extra Webserver betreiben moechte oder er bereits weiss, dass Zugriff von Mitarbeiter uebers Internet erfolgen sollte etc.
Please use Mark as Answer if my post solved your problem and use Vote As Helpful if a post was useful.
-
das wird schon eine komplexe Anwendung sein, natürlich auch mit frei gestaltbaren Report. Programmiersprache sollte VB sein. Dem Kunden geht es in erster Linie um Zukunftssicherheit.
Hallo Tom,
wie die Kollegen bin auch ich der Meinung, anhand der spärlichen Informationen lässt sich keinerlei auch nur halbwegs brauchbare Aussage zum Aufwand treffen.
"Klicki-Klacki" Anwendungen (also primär per Designer aufgebaute Formulare unter Verwendung aller möglicher und unmöglicher Assistenten, als Beispiel SqlDataSource in ASP.NET) sind zwar schnell aufgebaut, jegliche Änderung, die die von den Controls/Assistenten bereitgestellten Features auch nur minimal überschreitet, wird die Folgekosten sehr in die Höhe treiben.
Macht man es gleich richtig (dafür braucht man aber Entwickler, die ihr Handwerk verstehen) ist der anfängliche Aufwand höher, dafür sind die Folgekosten meist geringer. Mit steigender Komplexität steigen auch die Aufwände und damit die Kosten für Änderungen, seien Sie auch noch so klein.
So oder so: Es wird dir nichts übrig bleiben als über den Anforderungskatalog bzw. ein Pflichten- und/oder Lastenheft entsprechend die Aufwände für die jeweilige Umsetzungsvariante zu ermitteln.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community -
Hallo Tom,
Elmar, Daniel und Stefan haben eigentlich schon alles gesagt, was von Relevanz ist. Ich möchte aber - insbesondere in Bezug auf - Client / Server Applikationen noch einen Punkt mit ins Spiel bringen, der nicht zu unterschätzen ist: Kernkompetenzen!
Das hört sich zunächst einmal nichtssagend an, ist aber aus meiner bisherigen Sicht als SQL Server Entwickler einer der wesentlichsten Punkte für Erfolg / Misserfolg eines "Programmierprojektes".
Meines Erachtens ist eine klassische Client / Server Entwicklung nur in einem Team und nicht "von einem Programmierer" zu reallisieren. Gerade im Bereich "Datenbankdesign" werden durch die ganzen "Klicki Bunti"-Tools (an denen Microsoft selbst auch nicht ganz unschuldig ist) der größte Unsinn auf der Datenseite verzapft (Beispiel: LINQ / Entity Framework). Meine bisherigen Erfahrungen mit "bescheidenen" Datendesigns (bisher ALLE aus Entity Framework und LINQ) habe ich in meinem Blog verewigt. Ich kann versichern, dass ALLE Beispiele aus der realen Welt kommen und nur von mir "vereinfacht" wurden.
Du solltest für die Entwicklungskosten zwei Budgets planen:
- Datenbank-Entwickler
zuständig für das komplette Datenmodell und die Zugriffsebene (Relationen / Views / Stored Procedures / Functions) und SECURITY (!!!)- Frontend-Entwickler
im obigen Entwicklungszyklus ist dem Datenbankentwickler zunächst einmal vollkommen egal, mit was sich der Frontend-Entwickler beschäftigt. Handelt es sich um Access, ist OLEDB oder ODBC die Zugriffsschicht, .NET wahrscheinlich NativeClient.Nachdem das Datenbankdesign feststeht, kann erst mit dem Team für die Frontend-Entwicklung die Abstimmung beginnen. Da in einem vernünftigen Zugriffskonzept NIE ein Zugriff auf die Relationen unmittelbar geschieht, ist der Datenbankentwickler für die Zugriffsobjekte zuständig. Die Anforderungen an diese Objekte (Views / Stored Procedures / Functions / ...) werden jedoch vom Frontend-Team definiert!
Ich habe zu diesem Thema mal auf der SEK einen Fachvortrag gehalten. Die Präsentation und Beispielcodes kannst Du hier herunterladen:
http://www.donkarl.com/Downloads/SEK/Securitykonzepte: http://www.donkarl.com/Downloads/SEK/SEK4_Sicherheit.zip
Anwendungsentwicklung: http://www.donkarl.com/Downloads/SEK/SEK2_Mehrschichtige.zip
Uwe Ricken
MCSE - SQL Server 2012
MCSA - SQL Server 2012
MCITP Database Administrator 2005
MCITP Database Administrator 2008
MCITP Microsoft SQL Server 2008, Database Development
db Berater GmbH
http://www-db-berater.de
SQL Server Blog (german only)- Bearbeitet Uwe RickenMVP Samstag, 2. Februar 2013 15:40
-
Hi Uwe,
danke dir für deine Antwort und die hilfreichen Links. Vielleicht soltle ich meine Frage weiter konkretisieren:
Für meine Budgetkalkulation steht der erste Teil bereits fest. Mir geht es genau um den zweiten Teil, der Frontend-Entwicklung. Wobei es mir, wie du schreibst, egal ist, mit welchem Frontend die Anwendung zum Laufen gebracht wird. Mir geht es um die gesamte Kalkulation und darum, wieviele Personen letztendlich ins Projekt zu holen sind.
Daher mein eÜberlegungen, dass, angenommen, wenn die Access-Frontendtruppe für mein Projekt für die Masken, Report und Navigation 50 Personentage benötigt, wieviele Tage bräuchte ein anderes Projektteam, welches dieselben Kenntnisse und Fähigkeiten in ihrem Fach wie das Access-Team in seinem Fach besitzt, für das selbe Projekt?
Danke.
Thomas
-
Hallo Thomas,
da kannst Du so oft fragen, wie Du möchtest, es kann dir keiner sagen, wie lange das braucht, wenn man die Anforderungen nicht im Detail kennt.
Etwas, was sich in Access ggfs. in 2 Manntagen erledigen lässt, kann in ASP.NET in 2 Stunden oder auch in 2 Wochen gemacht sein. Dasselbe gilt für WinForms, usw.
So einfach, wie Du es gerne hättest, lässt sich das nicht machen. Nicht umsonst ist der Aufwand vor- und nach der eigentlichen Entwicklung je nach Umfeld und Komplexität teils höher als der Entwicklungsaufwand selbst.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community -
Hallo Thomas,
wenn mich meine (seit langen Jahren in der Softwareindustrie steckende) Nase nicht täuscht,
bewegst Dich auf gefährlichem Terrain (offen gelassen für wen am Ende).
Auf der Basis, dass eine "Truppe" sagt, sie könne etwas in 50 Tagen realisieren, Alternativen zu ermitteln und zu "budgetieren",
geht zu fast 100% voll daneben. Da landest Du fast unweigerlich bei dem, was der Berliner Flughafen derzeit vormacht.
Und wenn Dir nicht die Rückendeckung und das (beinahe) unerschöpfliche Budget unserer Ministerpräsidenten / Bürgermeister
sowie deren endlose Zeitplanung zur Verfügung steht, empfehle ich Dir anders vorzugehen.Suche Dir Softwarehäuser/-anbieter und schreibe das Projekt aus und lasse Dir konkrete Angebote bis ins Detail machen[1].
Kläre auch, wie die Software für die Anwender gestaltet werden soll, denn es gibt himmelweite Unterschiede.
Das gilt nicht nur bei Access sondern gerade auch bei Web-Frontends (wie Stefan bestätigen dürfte).
Da die Anwender am Ende länger (als 50 Tage) damit leben, was dabei herauskommt, sollte man vorher einen Konsens haben.
Denn wie bei Software- wie beim Hausbau gilt: Alles was später angebaut/-flickt werden muss, wird nur noch teurer.Gruß Elmar
[1] Und dies - sofern nicht bereits geschehen - auch von der "Access-Frontendtruppe" - denn 50 Tage hört sich hier verdächtig an nach: "So ungefähr kommt das schon hin, später kann da sowieso niemand mehr zurück, wenn es länger dauert". ;))
-
Hallo Elmar,
geht zu fast 100% voll daneben. Da landest Du fast unweigerlich bei dem, was der Berliner Flughafen derzeit vormacht.
ein sehr schönes und passendes Beispiel :)
(wie Stefan bestätigen dürfte).
[X] Done. Letztens erst wieder erlebt bei der "Übernahme" einer Fremdanwendung. Die Übernahme war dann letztendlich "Wir schmeißens weg und machens neu, kommt auf Dauer günstiger". Eine Klicki-Klacki-Anwendung auf Basis ASP.NET und SQL Server mit einigen Features. Hat den Kunden ca. 10.000 Euro gekostet. Angebot für eine Erweiterung, die eben durch den ganzen Klicki-Klacki Kram gar nicht machbar war und daher sehr umfangreiche Anpassungen notwendig gemacht hätte: Nochmal 20.000. Letztendlich wurde das Ganze auf einer sauberen Basis neu aufgebaut, kostet inkl. der neuen Features ca. 20.000 (wobei diese hier lediglich ca. 5.000 Euro ausgemacht haben). Da es in Zukunft einige Erweiterungen geben wird (die man jetzt, so es derzeit möglich war, schon an relevanten Stellen mit berücksichtigt hat), rechnet sich der Relaunch relativ schnell. Zudem können die Inhouse Entwickler nun auch was an der Anwendung machen, das ging vorher nur bedingt bis gar nicht, da sich keiner mit Klicki-Klacki Krams beschäftigen wollte/konnte.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community -
****************************************************************************************************************
Dieser Thread wurde mangels weiterer Beteiligung des Fragestellenden ohne bestätigte Lösung abgeschlossen.
Neue Rückfragen oder Ergänzungen zu diesem Thread bleiben weiterhin möglich.
****************************************************************************************************************