PDA

View Full Version : Slimserver Spec



ChrisOwens
2006-11-07, 16:56
One thing that every QA manager wants is a good spec to test against. We don't have a good spec, so we've started one at http://wiki.slimdevices.com/index.cgi?SlimServerSpecification.

The purpose of the software spec is to define the behaviors and features of the software to a deep enough level to test them and deal with relevant bugs correctly. The purpose is not to prescribe how to write them. We're also trying to prevent having the same debates over again and flip-flopping on desired behaviors while forgetting our original motivations.

My specific goals for this project are to improve my test processes and to have a resource for deciding the right course of action for bugs.

The format of the spec will include detailed enough information to summarize the behavior we've decided on, and be able to test the feature and deal with relevant bugs correctly. Implementation details may be required or helpful in some cases if they affect the program behavior. The structure of the database might be an example of this.

Constructive disagreements happen both on bugzilla or here in the forums, and I'll put (or you (or anyone) can put) references to the bug or thread URL in the appropriate section of the spec.

One thing specifically I don't want to happen is feature requests getting added to the spec. These should go through bugzilla as always. (http://bugs.slimdevices.com)

New features on the roadmap will be in separate pages (such as http://wiki.slimdevices.com/index.cgi?SlimServer7Spec), and will be integrated in with the main document at the time of the release of the new version.

The spec is currently a monolithic wiki page, and I'd like to keep it that way for now for ease of structural changes. As it gets filled in or other changes occur, it may be easier and more natural to break it into multiple wiki pages as long as they are clearly marked as being part of the spec.

The Slimserver spec is on our wiki, and as with all the documents there, it's editable by anyone. It's still early in the process of getting fleshed out, but please feel free to have a look, and make or recommend any changes you would like to see!

gerph
2006-11-11, 07:14
One thing that every QA manager wants is a good spec to test against. We don't have a good spec, so we've started one at http://wiki.slimdevices.com/index.cgi?SlimServerSpecification.

The purpose of the software spec is to define the behaviors and features of the software to a deep enough level to test them and deal with relevant bugs correctly. The purpose is not to prescribe how to write them. We're also trying to prevent having the same debates over again and flip-flopping on desired behaviors while forgetting our original motivations.

I've added in some (only some) of the description of the tagging values and what they're mapped to. I'm not sure this is the level of information that you want, but as a large number of the issues that people see will be due to incorrect tagging, having a description of what it's meant to do seems like the right thing to have. It's possible that I've gone into more depth here than you'd like (and I know it's not complete).

Although I can see and understand where the tags come from in the MP3, etc processing (with the exception of WMA which I couldn't really follow), I don't know where things go in the database afterward. I couldn't find the code that takes the results of the tag details and puts it into the database. As such, that area is quite incomplete.

I've only dealt with the actual behaviour, not the intended behaviour. As I don't know what the intention was, I can't actually do the latter. If this isn't what you want, obviously just get rid of my changes!

ChrisOwens
2006-11-13, 11:15
That's great; thanks!

The problem is at this point NOBODY knows what the original intent was. :) So rather than fight about it in the bug database, we decided we needed a spec.

I couldn't ask for more than documenting the current behavior. At least it gives us a place to start from and refer back to as we add features to Slimserver.

Aragorn
2006-11-17, 02:20
This is the first step toward a much needed professionalisation of the sofware development process.
Congratulation.
Arragorn