Your Treasure Map: Key Benefits of Having a Project Specification

So what is a project specification?

  • A functional specification describes what has to be implemented from a future user’s point of view. For example, what the user needs, or what they might ‘observe’ when interacting with the product. You can call it an ‘open specification’ because you only put the ‘X’ mark on the map and leave it to the pros to decide how to get there.
  • The other type specifies the inner workings of the proposed system and the measure by which success or failure will be assessed. This type is a ‘closed project spec’ because it describes the tools, technologies or individual units that must be used to meet the need — like a definite route set on a map. Let it be a ‘technical specification’ definition. A technical spec may incorporate or follow a functional spec for the same project.

When will you need it?

  • what the developers will build
  • what tests the testers will run
  • what the stakeholders are getting

How to write a technical specification?

  • Include a definition section at the beginning of the project spec to clearly define all terms and abbreviations you are using
  • Instead of using ‘it’ or ‘which’ in the text, always specify what is being referred to
  • Use the verb ‘shall’ to define specifically expressed requirements that must be fully and properly met in the resulting product
  • Use short and direct sentences
  • Develop a table of contents
  • Assign to the document a title and control number with revision capability
  • static structure (e.g., components, interfaces, dependencies);
  • dynamic behavior (how components interact);
  • the signature of an interface, including all data types/structures required (input and output data types in the information systems, exceptions);
  • deployment considerations (e.g., runtime requirements, third-party components);
  • detailed class models including all methods, attributes, dependencies, and associations;
  • the specific algorithms that a component employs and how they work;
  • physical data models, including attributes and types of each entity/data type, etc.

What is a technical brief?

  1. Create a list of all persons who are going to participate in the project, if known, from the principal stakeholder to the last cabin boy, including each person’s contact information;
  2. Outline each person’s role in the creation of the technical spec (technical writing, review, decision-making, approval, etc.);
  3. List all the tasks and subtasks that must be completed, indicating the name of the person responsible for the task;
  4. Indicate the due dates for each project part to be completed and the dates of all reviews;
  5. If any decisions must be made, indicate when and how it should be done;
  6. With some expert help, try to list all technology that will be used in the project, including software and/or hardware needed to complete the project;
  7. Try to include any possible technical problems into the technical brief.

So, why a project spec?

  • clearly sets goals, expectations and quality standards for a product;
  • motivates and gives job instructions to everyone on the voyage;
  • makes a great reference guide for the development team, leaving less room for confusion;
  • saves the time that would be required to collate accurate information and clarify instructions during the development;
  • provides a step-by-step plan for a project, outlining milestones, to help ensure the appropriate quality product is created on time and on budget;
  • as part of the contract documentation, precludes the crew from changing course or giving you ‘the black spot’;
  • after the project, provides a basis for technical documentation for the product, design documents of a later version of the product, etc.;
  • remains a valuable asset even if you put off or cancel the project: you still can use the specs in the future, or make it a sample when you undertake another voyage.
  • complex functionalities, e. g., web platforms/applications or mobile applications
  • big team projects
  • fixed-price projects
  • negotiating, signing and fulfilling a formal contract
  • one-legged ship’s cooks with talking parrots on their shoulders

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Onix-Systems

Onix-Systems

Onix-Systems provides IT services in website, mobile app and emerging technologies software development. Check our blog -> https://onix-systems.com/blog