Friday, June 29, 2012

Not A Nerd Post....

This is not a nerd post, although it may look like it at first.  Please don't run away at my next six words....

I used to do software development.

I did full life-cycle development, which is a fancy way of saying I was responsible for every aspect of the project from requirements-gathering to implementation and even user training and documentation.  Exciting, isn't it?

The cool thing for me, which I've said here before, is almost every piece of this process correlates to writing.
  • Requirements gathering = Coming up with the initial idea for a story
  • Statement of Work = Pitch or query
  • Design = Outlining
  • Development = Writing
  • Testing = Editing
  • User testing = Review by beta readers
  • Implementation = Getting it published

Are you still there? 

What I want to talk about here is testing/editing.  Basically there are three ways to test: detailed testing of individual units, testing one unit against the others, and user testing.

Testing is done very systematically, often with a test plan or a checklist. You have to be sure everything, every little thing - every button click, every function call, every page return - works every time on every page without exception. 

Testing a unit is analogous to testing a chapter.  Each chapter has to be grammatically flawless.  It needs to stand on its own as if it were a short story with a beginning, middle, and end.  The chapter has to do something - it needs to have a function and achieve that functionality by the end.  If not, you don't need it.  If a part of it doesn't serve a function, you don't need it.  It slows things down. 

Testing each unit against the next (integration testing - sorry, I couldn't not give it a name) for a novel involves comparing one chapter against the next to make sure there's consistency in details and characterization and voice from one chapter to the next.  When you put all the chapters together, there should be those ups and downs, tension, characters development (or lack of for some characters), and a bunch of stuff I probably don't know about yet since I'm kind of new to this.

User testing is having other people give feedback at the chapter level and for the novel as a whole.  When we do user testing for software, we always have people that would be actual users of the application to do the testing.  If the program is being developed for accountants, we ask accountants to test it.  One mistake I made with beta readers is I didn't ask my readers if they liked my genre before they started reading.   If they don't enjoy the genre, they won't get the book.  No kidding, right?

My point, in case anyone is still reading, is that I think it's a good idea to be very systematic when editing, to take one thing at a time, to break it into chunks to make it manageable and ensure you're being thorough even when editing only one chapter.  I'm suggesting that if you're wired this way - if you find pleasure in attacking things in a systematic way - this software testing process should work for editing a novel in theory.

But maybe this only works for the type-A nerds among us.  I'm not the only one, am I?

I could keep going on about error logs and issue tracking, but I won't. 

BTW, my nerd-husband read this and told me this is in fact a nerd post.  Sorry about that.

Honestly, did you read this?   Or did you read the first three lines and then jump to this question at the end? 

18 comments:

  1. Oh I absolutely read every word of the post, and I thought it was a brilliant analogy! I can totally see how the development cycle of software relates to the creative process of writing a complete novel.

    But then, I'm an electrical engineer with a history of software development (and an ex-EDS employee), so I guess I qualify for the nerd title myself, and may have only just reinforced your husband's opinion....

    ;^)

    ReplyDelete
    Replies
    1. Glad you liked it. :) Nothing wrong with being in the nerd category.

      Delete
  2. I have the giggles. I made it through the first paragraph of testing and then skipped down...being honest. Sorry! I do agree with you though...when I take things step by step, one at a time, it works better with anything BUT sometimes like this morning...I feel the need to jump around. (I think it is too much coffee) I have to remind myself to take things chunk by chunk to make it more manageable, otherwise I do think you miss things and it is overwhelming. Yep...too much coffee. Holy comment. ;-)

    ReplyDelete
    Replies
    1. LOL. I didn't think many people would read it all the way through. :)

      I had too much coffee too - and way too late in the morning. I was going to focus and do some edits - I definitely can't focus right now. I think my current spazziness would be better used on cleaning something.

      Delete
  3. A lot of software that gets "upgraded" I wonder if they bothered to test it at all and who they tested it on. Like say the Blogger or Twitter "upgrades" which I don't like but grudgingly have to get used to. I suppose like writing it helps to have good beta testers.

    ReplyDelete
    Replies
    1. Uh, some of it clearly is not tested very well.

      Delete
    2. Or you can be big like Microsoft and release the software early to your customers. That way you get people to PAY you being your defacto beta testers... ;^)

      Delete
    3. I was among those who used/tested the first release of VB.Net.

      Delete
  4. I loved this post! Of course, I'm a type A nerd, too, so that's probably why. I really liked your analogy.

    ReplyDelete
  5. Okay, it's a little nerdy, despite the title. LOL.

    I do have to be a little more systematic when I'm editing. I'll sometimes go through and do a grammar edit, then a story edit, then character consistency edit...you get the point. I guess I'm a type A nerd myself. :)

    ReplyDelete
    Replies
    1. Welcome to the club! I miss your posts. Hope you come up for air soon.

      Delete
  6. I love this analogy. And good to know about the software development. Do you still do development on the freelance?

    ReplyDelete
    Replies
    1. Nope. But I still knew what my husband meant when he said "XML RPC" yesterday. Lucky for him he didn't have to explain it.

      Delete
  7. I read it...got it...and enjoyed it! It's an excellent analogy and I believe more writers would benefit if they utilized this type of approach!

    I considered the post nerd-lite!

    ReplyDelete
  8. LOL, I skipped at first and then went back when I read your question.

    ReplyDelete
  9. I read write through and could relate, must be a little Type A in me as well! Good advice Tonja!

    ReplyDelete
  10. Oh the days of QA came flooding back. I didn't skip and chuckled at a few points. I'm so full blooded Geek. :) I, too, did software development, database administration, and web development. Wow, that was a long time ago. LOL

    ReplyDelete
  11. I read it all the way through, and I agree with you! I did my editing step-by-step. I did do an initial read through with a red pen to just grab things that were in need of editing, but I then went through looking for specific issues, then would go through again. It helped not to miss things.

    ReplyDelete