{"id":247,"date":"2014-12-04T23:26:48","date_gmt":"2014-12-05T02:26:48","guid":{"rendered":"http:\/\/52.24.147.87\/?p=247"},"modified":"2016-09-01T21:45:47","modified_gmt":"2016-09-01T16:45:47","slug":"designing-a-product-requirments-gathering","status":"publish","type":"post","link":"http:\/\/www.stonemillkids.com\/index.php\/2014\/12\/04\/designing-a-product-requirments-gathering\/","title":{"rendered":"Product Design &#8211; Gathering Requirements"},"content":{"rendered":"<p>So, I really want to design code, but I am finding that I am not having enough requirements to actually know what I need to design.\u00a0 I know I want to make a puzzle, but how does one imitate the physical world?\u00a0 My solution has been to study it.<\/p>\n<p>For the past two week I have been buying, playing with, shopping for, learning how to manufacture, drawing, talking about puzzles.\u00a0\u00a0For me\u00a0requirements gathering is like an actor training for a new role by remaining in character for two weeks.\u00a0 \u00a0Does it help?\u00a0 I think so.\u00a0 Foe example, I now know the following:<\/p>\n<h3>In the physical world<\/h3>\n<p>1) Amazon sells a wooden puzzle for about $10 USD.\u00a0 Good puzzles can be $30 USD, or more.\u00a0 This helps set pricing.<\/p>\n<p>2) I personally like thicker, or taller puzzle pieces, instead of the ones with the nobs on them to hold\/rotate.<\/p>\n<p>3) Puzzles have to be tested for choking hazards, and labeled appropriately.\u00a0 For me that mean\u00a0bigger shaped pieces would be beneficial.\u00a0 On my &#8220;board&#8221; it looks like I should have no more than six (6) pieces on the screen at once.<\/p>\n<h3>In the App market<\/h3>\n<p>4) Puzzles Apps range from free, to not more than $5 USD.\u00a0 Some of them are funded via ads, which are painful.\u00a0 Others are funded by in-app purchases.\u00a0 Some of the in-app purchases would be impossible from me to hide from my kid, others require good adult interaction to purchase.\u00a0 I want my puzzle to not be a pain for parents, but still fun for kids.\u00a0 This mean no adds, and the in-app purchasing needs to be convenient for parents, but not available easily for kids.<\/p>\n<p>5)\u00a0 Puzzles range from complex animation to static images.\u00a0 Watching my daughters, it seems that you don&#8217;t have to animate everything, but static shapes bore them.\u00a0 I&#8217;m thinking of adding sound, and maybe a splash animating when piece is placed correctly.\u00a0 (I might to better animations with Spine later, but again I want to get the app up).<\/p>\n<p>6) I need a way to vary the levels.\u00a0 They seem to like the A, B, C&#8217;s but their attention span will not get them through the alphabet.\u00a0 If you look at many of the kids movies, cartoons, or games, they have 3 chapters, 3 clues, and finish a story in 10 minutes.<\/p>\n<p>7) Kids like to make the game their own.\u00a0 Nicole loves the idea of stickers and other free-form distractions in between solving the actual puzzles.\u00a0 I&#8217;m thinking of creating a shapes cut-and-paste area where she can free form &#8220;draw.&#8221;<\/p>\n<h3>From My Dev Research<\/h3>\n<p>I have pages, and blog posts started, for a number of items.\u00a0 The more research I do the more I am starting to believe that the simple iterative designs is going to produce the best results.\u00a0 For example, Nicole played with a circle colored with a blue crayon, but hated the circle that I used with her face on it.\u00a0 Iterations and play testing are an absolute must.<\/p>\n<p>The basic set of screens that I can think I need are a<\/p>\n<p style=\"padding-left: 30px;\">1) Landing\/Welcome screen<\/p>\n<p style=\"padding-left: 30px;\">2) Game Screen (the actual puzzle)<\/p>\n<p style=\"padding-left: 30px;\">3) About Screen<\/p>\n<p style=\"padding-left: 30px;\">4) Settings Screen<\/p>\n<p>I am going to try to keep most things simple.\u00a0 I will make the Game Screen, &#8220;Level&#8221; based so that I can switch them our and\/or try new puzzles.\u00a0\u00a0This will allow me to respond to new\u00a0puzzle requests and\/or modify exiting gameplay without adjust the overall architecture of the game.<\/p>\n<p>Once the basic structures are in place, I&#8217;m going to do an iteration of refinement to move them from prototype screens to more refined in gameplay, graphics, and\/or sound.\u00a0 Once I think I have a stable setup, I&#8217;ll be able consider publishing.<\/p>\n<p>My eventual goal would be to be able to add user content and\/or allow people to rate and vote for the levels that are most enjoyable.\u00a0 Eventually, I could publish groups of levels that contain common themes, gameplay or other traits (A,B,C&#8217;s \/ Numbers \/ Shape), etc.<\/p>\n<h3><strong>Development Notes<\/strong><\/h3>\n<p>I know this is a non-technical blog, but I think there is something to be said for maintaining a set of requirements.\u00a0 My plan is to create a simple requirements document that is updated and tested against as I go.\u00a0 This will allow me to practice an Agile-style development cycle, while maintaining code that has some traceability.<\/p>\n<p>Since the requirements are generally few in number, this will also allow me to bring up basic software necessities such as a code repository and other standard development items.\u00a0\u00a0While it may seem like overkill to do so, I will be implementing a basic Quality Management System to go along with this.\u00a0 Why?\u00a0In my opinion, test driven,\u00a0development works best with user stories are mixed with requirements.\u00a0 Even if this is not completely true to test driven development, the general principle of testing as you are coding to requirements I have found greatly reduces overall testing time.<\/p>\n<p><strong>Next Stop&#8230; <\/strong>Requirements<\/p>\n","protected":false},"excerpt":{"rendered":"<p>So, I really want to design code, but I am finding that I am not having enough requirements to actually know what I need to design.\u00a0 I know I want to make a puzzle, but how does one imitate the physical world?\u00a0 My solution has been to study it. For the past two week I [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":422,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[9,12],"tags":[37,53],"_links":{"self":[{"href":"http:\/\/www.stonemillkids.com\/index.php\/wp-json\/wp\/v2\/posts\/247"}],"collection":[{"href":"http:\/\/www.stonemillkids.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.stonemillkids.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.stonemillkids.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.stonemillkids.com\/index.php\/wp-json\/wp\/v2\/comments?post=247"}],"version-history":[{"count":2,"href":"http:\/\/www.stonemillkids.com\/index.php\/wp-json\/wp\/v2\/posts\/247\/revisions"}],"predecessor-version":[{"id":760,"href":"http:\/\/www.stonemillkids.com\/index.php\/wp-json\/wp\/v2\/posts\/247\/revisions\/760"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/www.stonemillkids.com\/index.php\/wp-json\/wp\/v2\/media\/422"}],"wp:attachment":[{"href":"http:\/\/www.stonemillkids.com\/index.php\/wp-json\/wp\/v2\/media?parent=247"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.stonemillkids.com\/index.php\/wp-json\/wp\/v2\/categories?post=247"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.stonemillkids.com\/index.php\/wp-json\/wp\/v2\/tags?post=247"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}