27 votes

Pourquoi y a-t-il tant de sites dédiés à la programmation et pourtant il y en a relativement peu qui décrivent réellement les systèmes qu'ils essaient de produire?

Il ya beaucoup de sites là-bas qui enseignent aux gens comment construire un meilleur logiciel--mais pourquoi est-ce qu'il y a très peu de sites qui donnent des descriptions détaillées des domaines que nous (en tant que programmeurs) sont supposés créer? On ne peut que construire tellement de nombreux stocks, de la comptabilité et des systèmes ERP avant un modèle d'exigences communes commencent à émerger parmi les différents types de systèmes. Logiquement, si les programmeurs passent tellement de temps à essayer de créer des composants réutilisables dans leurs architectures, cela signifie qu'il doit avoir quelques réutilisable "plan d'action" qui décrit les systèmes qu'ils sont censés créer? En d'autres termes, il semble que l'objectif de développement de logiciels a été trop centrée sur le "comment" le logiciel devrait être construit plutôt que de cataloguer et de spécifier exactement (avec les exigences détaillées) "ce" doit être utilisé en premier lieu.

Donc ma question est: A t-il eu des travaux effectués pour le catalogue de tous les différents types de spécifications du système en un seul endroit, le tout sur un seul site? Si il lui manque les exigences en début de projet est l'un des banes de développement de logiciels, ne serait-il pas plus de sens pour être en mesure de "réutiliser" cahier des charges et les systèmes précédents du même type qui ont déjà été écrit?

6voto

Mark Harrison Points 77152

Il y en a, mais ils sont généralement gérés par des fournisseurs qui souhaitent vous vendre une solution. : - /;

5voto

Jonathan Leffler Points 299946

Il y a un site de la Base de données des Réponses qui tente de fournir des solutions pour la commune de dessins de base de données. Ce n'est pas le même comme une solution complète, comme vous décrivez, mais c'est un pas dans la bonne direction.

Vous commentez "[o]ne peut construire de manière beaucoup [...] les systèmes avant" la communauté devient évident. Cependant, ceux qui ont construit assez de ces systèmes de repérer les points communs alors tenter de tirer profit de la création de leur version du système commun, puis ils le vendent. Il n'est pas (ou supposés l'être) dans leur intérêt de donner d'autres personnes qui pourraient faire la même chose d'un coup de main.

4voto

MrTelly Points 10828

Je suis complètement d'accord, où est le "Dummy guide de l'inventaire", l'accrédités modèle de données pour les clients, les adresses et les coordonnées etc etc. J'ai trouvé moi-même re-mise en œuvre du même code en tant d'endroits différents, avec une subtile différents domaines et de la logique, mais, fondamentalement, la même chose. Quelques années en arrière, j'ai trouvé un site de pré-cuit modèles de données - un petit pas dans la bonne direction, mais pas toute l'histoire Universelle des Modèles de Données (pas de connexion). Vous remarquerez qu'ils n'ont pas eu beaucoup d'intérêt pour leur produit si.

J'ai aussi travaillé dans un couple des organisations qui élaborent leur propre "universel" modèle de données comme un produit vendable. On était dans le domaine des services financiers, et ils ont obtenu de 1500+ tables DB2, et a abandonné. Les Organisations sont fiers d'être unique, alors que nous (les techniciens), à réaliser que sous le capot, la plupart sont assez semblables choses - je pense que c'est peut-être trop dommageable pour l'entreprise ego à confesser, et admettent qu'ils sont juste comme tout le monde à l'aide de UniversalCustomer (TM) 1.7. Aussi qui fait ces entreprises mûrs pour un peu de SAP, Peopleware etc.

Comme une dernière pensée - il y a beaucoup de fruits mûrs pour la entreprenaurs ici. Un bon set de petits livres décrivant les domaines communs. Je veux dire la super simple des choses, des personnes nom, adresse, numéro de téléphone, etc - avec toutes les petites faiblesses comme titre dans les différentes cultures, et numéro de téléphone de mise en page géré - maintenant, il y a un livre/wiki beaucoup de gens pourraient utiliser.

3voto

le dorfier Points 27267

Dans mon expérience, où il tombe à l'eau est le Cas d'Utilisation visées par l'INTERFACE utilisateur. J'ai, en fait, ont conçu et construit un système d'inventaire qui a été appliquée à travers un large éventail d'organisations et de secteurs (télécoms, produits alimentaires, produits de soins de santé, l'électronique, la fabrication et la distribution de produits de consommation, de l'habillement, de l'aérospatiale, de beaucoup d'autres.) Après la première demi-douzaine, un bon modèle de données a émergé qui a servi avec peu de variations (de l'extension, mais pas de variation) pour tous.

Mais même au sein d'une industrie, pour un certain nombre de raisons (nature du produit, les variations de volume, la moyenne de taille de l'ordre dans et hors, exigences en matière de comptabilité, la motivation de l'employé, etc. etc.) la façon dont le travail est effectué par des personnes réelles varient énormément, pour de bonnes raisons.

Notez que les exemples ci-dessus semblent être sur plus profonds niveaux d'abstraction - en particulier des modèles de données - où nous les programmeurs peuvent le faire à notre façon, à notre avantage. Le plus près de l'utilisateur nous avançons, plus nos intérêts doivent deviennent secondaires par rapport à la leur.

Pire des cas, exemple: quelqu'un d'autre A remarqué que le modèle de l'employé-planification et workhour-les systèmes de rapports pour afficher une semaine par l'écran, multi-écran de saisie des données des formulaires?

2voto

mbeckish Points 6180

Découvrez le Modèle de Données de Ressources Livre par Len Silverston:

http://www.amazon.com/Data-Model-Resource-Book-Vol/dp/0471380237/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1232336996&sr=8-1

L'approche de conception réutilisable à partir du modèle de données de point de vue, contrairement aux exigences de l'utilisateur final ou OO dessins. Cependant, je trouve que, pour être très utile une fois que vous avez une bonne connaissance du modèle de données, vous avez un grand saut sur les exigences et les entités qui finira par être modélisés comme des classes.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X