A specification (often abbreviated as spec) is an explicit set of requirements to be satisfied by a material, product, or service.

learn more… | top users | synonyms

94
votes
13answers
61k views

What is the difference between requirements and specifications? [closed]

I've been tasked with developing requirements and specifications for a project our group is starting. I realized that I don't know the difference; a Google search just confused me more -- it seems ...
68
votes
5answers
54k views

Two HTML elements with same id attribute: How bad is it really?

Just browsing the google maps source code. In their header, they have 2 divs with id="search" one contains the other, and also has jstrack="1" attribute. There is a form separating them like so: ...
41
votes
4answers
5k views

Experience of Python's “PEP-302 New Import Hooks”

I'm one of the developers of Ruby (CRuby). We are working on Ruby 2.0 release (planned to release 2012/Feb). Python has "PEP302: New Import Hooks" (2003): This PEP proposes to add a new set of ...
32
votes
3answers
10k views

Why are exception specifications bad?

Back in school some 10+ years ago, they were teaching you to use exception specifiers. Since my background is as one of them Torvaldish C programmers who stubbornly avoids C++ unless forced to, I only ...
31
votes
1answer
8k views

Java: “Heap pollution”

A "Heap Pollution" as in Non-Reifiable Types (The Java™ Tutorials > Learning the Java Language > Generics (Updated)) Why is it called that way?
29
votes
12answers
6k views

Dealing with bad/incomplete/unclear specifications? [duplicate]

I'm working on a project where our dev team gets the specifications from the business part of the company. Both the business management and the IT management require estimates and deadline ...
28
votes
1answer
945 views

If the spec is flawed, should it still be followed?

I have been assigned to develop an integration to one of my employer's applications to an external system developed by our client. Our client's specification for the integration that has some blatant ...
21
votes
7answers
1k views

How can a non-technical person learn to write a spec for small projects?

How can a non-technical person learn to write specs for small projects? A friend of mine is trying to outsource some development on a statistics project. In particular, he does a lot of work in ...
17
votes
9answers
1k views

How do I move a client from UI mockups to a set of real requirements?

Say you are given a mock-up of 25 screens of the visual states of your application. The expectation is that this is enough for us to be confident we can develop and hand it to the original stakeholder ...
17
votes
2answers
897 views

How up-to-date is the Joel test? [closed]

I want to convince my partners that we should have a spec and that bugs should get fixed before writing new code. Should I refer to the Joel test? Do you think that the Joel test is up to date? I ...
16
votes
8answers
427 views

Let users get requirements together on their own or guide them along?

I'm sure everyone has experienced something like this. You go into a meeting with a client who has a project. They have no/few requirements in mind and the vaguest understanding of what they ...
15
votes
6answers
1k views

Can you claim that your product is fit for purpose when it uses OSS software which does not guarantee it?

I am working on a product for a client that must be valid and fit for purpose. It's built on a LAMP stack (PHP/Cake), so there's GPL, MIT, PHP, APACHE licenses: "AS IS" BASIS, WITHOUT WARRANTIES ...
15
votes
9answers
1k views

How to convince a non-technical client that their application spec needs to be simplified?

Often times I am faced with the situation where a new client comes to me with an application that has literally 100s of unnecessary features and it is quite clear that things need to be drastically ...
13
votes
5answers
6k views

What to plan before starting development on a project?

Say I've received the specs for a project from a client, and now its time to start developing it. Normally, I just start with the first module (usually user registration) and then go from one module ...
12
votes
8answers
583 views

How do you make a manager understand Agile?

I have a problem with a senior director who doesn't understand iterative development (much less Agile). He is insistent that our software design specification (SDS) be complete before any line of code ...
12
votes
5answers
601 views

What should I do if I don't have any formal spec? [duplicate]

I recently was assigned to a task, but it says only a couple of words, like, do it as it made there, with no actual spec attached. What is the best thing to do in that circumstances?
12
votes
5answers
4k views

What grammatical tense should I write my specifications in?

We are currently writing functional and technical specifications in a two column format; summary sentence and technical detail. The details often refer to an appendix with diagrams, layout designs ...
12
votes
2answers
633 views

“Do it right, against customer's wishes” - how is it called? [closed]

We know the optimal situation of negotiating corrections of specifications with the customer, getting the specs to do what the client wanted, not what they said or thought they wanted. That's ...
11
votes
2answers
363 views

Need interpretation of section in C# specification

I am reading the C# specification. I could use clarification on a segment: C# has a unified type system. All C# types, including primitive types such as int and double, inherit from a single ...
11
votes
1answer
8k views

how do I write a functional specification quickly and efficiently

So I just read some fabulous articles by Joel on specs here. (Was written in 2000!!) I read all 4 parts, but Im looking for some methodical approaches to writing my specs. Im the only lonely dev, ...
10
votes
6answers
653 views

Should we put the specification documents in source control system such as svn?

Today, One of my colleague and I have a debate about "Should we put the specification documents in source control system such as SVN?". In my opinion, It should be. Everything relate to developing ...
9
votes
13answers
763 views

Can you write an unambiguous specification in a natural language like English?

It seems to me that you cannot possibly write a software specification in English that is completely free of ambiguities, simply due to the informal nature of natural language - and therefore that a ...
9
votes
5answers
365 views

Spec Writing Management

I simply cannot imagine writing software without a spec. No matter how sketchy or high level it is, spec is important to explain to the clueless programmers on what are the functionalities of the ...
9
votes
6answers
219 views

How do you create a software process for a project?

As I've written about in other questions here, the project that I'm working on now has no software process. That means no documentation (including hard copy requirements or specification), no source ...
9
votes
1answer
165 views

How to avoid duplication between my issue tracker and the project specification documents?

I used to work for a professional consulting firm, and we worked under many different contract terms. When we could get a time & materials project, we ran it with SCRUM and tracked the backlog in ...
8
votes
6answers
651 views

When should development stop and QA begin?

We write a complete functional specification for our development team of two. We do not have professional testers however we have drafted in the help of our available helpdesk personnel to perform 'QA ...
8
votes
2answers
18k views

What are the differences between throwaway and evolutionary prototypes?

I have notes about various methods of prototyping, and I found several definitions on the Internet, but I would like to confirm what I learned. I understand that throwaway prototyping is developed ...
7
votes
9answers
641 views

Why bother with detailed specs?

When writing software, what's the point of writing a formal, detailed dead-tree specification? To clarify, a somewhat informal, high-level specification for people who don't want to read the code ...
7
votes
4answers
524 views

I want to explain why the specification must not be changed during development period

I want to explain why the specification must not be changed during development period to the new planning department employee.
7
votes
5answers
3k views

How to make a great functional specification

I am going to start a little side project very soon, but this time i want to do not just the little UML domain model and case diagrams i often do before programming, i thought about making a full ...
7
votes
5answers
1k views

Is a functional spec a part of the System requirement spec?

I wonder, sources like wikipedia or templates I found shows that Functional spec is a part of System requirement documents. I always thought that SRD is just overall decsription of the system, with ...
7
votes
5answers
1k views

Wiki-like tool for writing specifications and documentation [closed]

I am looking for a wiki or wiki-like system for writing and managing specification and documentation for a software project. I know there are lots of wiki-implementations available, but are there ...
7
votes
2answers
40k views

What Specifications should a Programmer Seek in a Computer Purchase ? Or, What Computer should I buy? [closed]

I wish to acquire a new computer that is specially designed for programming. I would like to build it myself for the learning experience, but am willing to purchase it made as well. Basically I ...
7
votes
2answers
2k views

IEEE SRS documents: lightweight version when working with outside contractors?

Typically we follow an Agile development process that tends not to put an emphasis on writing requirements and technical documents that nobody will read. We tend to focus our limited manpower to ...
7
votes
3answers
232 views

Can I avoid more faults if I use different paradigms for the implementation and the specification/tests?

Since it is convenient for the developer, the same paradigm are often used for implementations and specifications, e.g. for testing (e.g. Java for the implementation and unit tests, Scala for the ...
6
votes
5answers
499 views

What to call requirements that are “assumed”/“invisible”/“very obvious”

I'm looking for an umbrella term for all the nitty-gritty requirements that it's helpful to have specified up front but which the client never thinks about in his excitement about the product. In the ...
6
votes
15answers
414 views

Do you ever read language specs? [closed]

While trying to answer questions on SO site (particularly C++ questions) I find that most of the times one person or the other includes a quote from the standard. I myself have hardly read the ...
6
votes
4answers
398 views

Why it is important to include definition of success/failure in specification?

I've read Steve McConnell's "Code Complete" and one of items in checklist for requirements is: "Is the definition of success included? Of failure?". Why is this important? Can you write any examples ...
6
votes
3answers
2k views

agile / scrum and functional specs

I work in a small team of four devs, one domain expert and one manager. We are looking to move to using scrum to try and formalise our processes. From what I understand of agile, it seems to be ...
6
votes
7answers
500 views

user's requirements verification, howto?

My question is: How can you verify the users' requirements early in the software creation process? I show the user specifications, prototypes, demos... but still users forget to share some ...
6
votes
3answers
1k views

Are there standard practices when writing a spec for a software development project?

Are there standard practices when writing a spec for a software development project? Is there a specific format to follow? Also, does the developer or the client write this up? If the dev, is this ...
6
votes
2answers
212 views

How to put lessons learned, good practices, etc into the “work flow”

As the title states it, I would like to get some suggestions about putting knowledge into action. We have many additional requirements that concern: coding practices feature development (all of them ...
6
votes
3answers
619 views

How can we verify that software meets specifications meets requirements?

So we're pretty good at eliciting requirements from our end customers, business division and sales/marketing. We plan projects to add/enhance features to meet those requests and prioritize tasks to ...
5
votes
5answers
295 views

Managing software projects - advice needed

I work for a large government department as part of an IT team that manages and develops websites as well as stand alone web applications. We’re running in to problems somewhere in the SDLC that ...
5
votes
2answers
43k views

What is the difference between technical specifications and design documents?

What are technical specifications? Are they the same as design documents. If not, what is the difference and some examples?
5
votes
5answers
207 views

The value of an updated specification

I'm at the tail end of a large project (around 5 months of my time, > 60,000 lines of code) on which I was the only developer. The specification documents for the project were designed well early on, ...
5
votes
5answers
862 views

Interesting questions about Behaviour-Driven Development

For my master thesis at Software Engineering, I want to investigate in the new development technique BDD (Behaviour-Driven Development). In my opinion this technique could really improve on customer ...
5
votes
3answers
1k views

How To Document an Object Oriented Design in Text

For my next project, I'm looking to document my Object Oriented design in simple text before jumping the gun to code it up. I want to do this for two reasons. I want to give proper thought to my ...
5
votes
4answers
229 views

Concurrent development w/o central design?

I've got a team of developers which are trying to write specifications/tests concurrently for different (and sometimes adjacent) parts of the system. Typically, the person writing the ...
4
votes
3answers
290 views

Customer Requirements Contains Equations that Cancel to Nothing

I have a project where the customer requirement specifies a report and contains mathematical equations for the contents of some of the columns on that report. One of the columns on this report is a ...