2008-09-22 8 views
9

Au travail, je suis souvent responsable de l'écriture des spécifications et je suis aussi la personne qui a insisté pour obtenir des spécifications en premier lieu. Le problème est que je ne suis pas sûr de la façon dont les spécifications devraient être regardées et ce qu'elles devraient contenir. La plupart du temps, lorsque mon patron rédige les spécifications (nous en avons tous les deux peu d'expérience), il y a des noms de tables et des choses qui ne me paraissent pas appartenir. Alors, quel est un bon moyen d'apprendre à écrire une bonne spécification?Quelles sont les ressources pour apprendre à écrire les spécifications?

EDIT: Si une spécification fonctionnelle inclut des choses comme supposer que je spécifie une application Web, les types d'entrée (une zone de texte, une liste déroulante, etc.)?

Répondre

10

La partie la plus importante de la documentation de développement à mon avis, est en ayant la bonne personne le faire.

  • Exigences Docs - Utilisateurs + Business Analyst
  • Spec fonctionnel - Analyste d'affaires + développeur
  • Spec technique (comment la fonctionnalité sera effectivement mis en œuvre) - Sr. Developer/ Architecte
  • estimations temps à des fins de planification - Le développeur spécifique affecté à la tâche

Avoir quelqu'un d'autre que le développeur/architecte principal pour définir les structures/interfaces de table, etc., est un exercice futile - car le développeur plus expérimenté en jettera généralement la plupart. Wikipédia est en fait un bon début pour les spécifications fonctionnelles, qui semble similaire à votre Spec - http://en.wikipedia.org/wiki/Functional_specification.

+0

Si seulement je pouvais voter plus d'une fois. – Ant

+0

Quelle est la différence entre une spécification fonctionnelle et une spécification technique? Mon lieu de travail actuel contient uniquement des documents d'exigences et des documents de spécification, et nous avons également eu une certaine confusion quant à ce qui devrait être inclus dans le document Spec. Merci. –

+0

Il s'agit principalement d'une différence de protocole, une spécification fonctionnelle peut être une description plus concise des exigences sans entrer dans trop de détails techniques - mais généralement moins la documentation, vous pouvez sortir avant que le développeur est impliqué le mieux. Ok, je suis partial. :-) –

1

L'important est d'obtenir quelque chose d'écrit plutôt que de s'inquiéter du format.

+0

Croyez-moi, je suis très heureux d'avoir quelque chose vers le bas, ce qui m'a pris environ un an à accomplir, je n'essaie pas d'affiner le processus. – Greg

3

Il ya un grand chapitre dans Code Complete de Steve McConnell qui passe en revue les documents de spécification et ce qu'ils devraient contenir. Lorsque j'ai été chargé de créer une équipe d'architecture et d'analyse commerciale dans une entreprise qui n'en avait jamais eu, j'ai utilisé le chapitre des spécifications de McConnell pour créer le plan du document de spécification technique. Il a évolué au fil du temps, mais en commençant par ce cadre, je me suis assuré que nous ne manquions de rien et il s'est avéré étonnamment utilisable. Lors de l'écriture des spécifications, une règle de base est de faire en sorte que les documents techniques commencent toujours par le général et se déplacent vers le spécifique - toujours reformuler le ou les problème (s) métier (s) que la solution technique est en cours de développement pour résoudre, de sorte que la personne lisant la spécification n'a pas besoin d'aller à d'autres documents pour le mettre dans n'importe quel contexte.

+0

Geez, c'est un bon livre, avec Writing Solid Code. - Ron –

1

Acheter des livres: Requirements Engineering par Ian Sommerville & Pete Sawyer ISBN 0-471-97444-7 ou Configuration logicielle requise par Karl Wiegers ISBN 0-7356-0631-5

2

Voir Painless Functional Specs par Joel Spolsky.

Certaines des choses, selon lui, toutes les spécifications devrait avoir:

  • Un avertissement
  • Un auteur. Un auteur
  • Scénarios
  • Nongoals
  • Aperçu
  • Détails, détails, détails
  • Problèmes en suspens
  • note côté
Questions connexes