{"action":"closed","issue":{"url":"https://api.github.com/repos/provencher/GCHQ-Puzzle/issues/2","repository_url":"https://api.github.com/repos/provencher/GCHQ-Puzzle","labels_url":"https://api.github.com/repos/provencher/GCHQ-Puzzle/issues/2/labels{/name}","comments_url":"https://api.github.com/repos/provencher/GCHQ-Puzzle/issues/2/comments","events_url":"https://api.github.com/repos/provencher/GCHQ-Puzzle/issues/2/events","html_url":"https://github.com/provencher/GCHQ-Puzzle/issues/2","id":128054412,"number":2,"title":"Requirements","user":{"login":"provencher","id":7420990,"avatar_url":"https://avatars.githubusercontent.com/u/7420990?v=3","gravatar_id":"","url":"https://api.github.com/users/provencher","html_url":"https://github.com/provencher","followers_url":"https://api.github.com/users/provencher/followers","following_url":"https://api.github.com/users/provencher/following{/other_user}","gists_url":"https://api.github.com/users/provencher/gists{/gist_id}","starred_url":"https://api.github.com/users/provencher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/provencher/subscriptions","organizations_url":"https://api.github.com/users/provencher/orgs","repos_url":"https://api.github.com/users/provencher/repos","events_url":"https://api.github.com/users/provencher/events{/privacy}","received_events_url":"https://api.github.com/users/provencher/received_events","type":"User","site_admin":false},"labels":[{"id":308386126,"url":"https://api.github.com/repos/provencher/GCHQ-Puzzle/labels/documentation","name":"documentation","color":"84b6eb","default":false}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/provencher/GCHQ-Puzzle/milestones/1","html_url":"https://github.com/provencher/GCHQ-Puzzle/milestone/1","labels_url":"https://api.github.com/repos/provencher/GCHQ-Puzzle/milestones/1/labels","id":1540435,"number":1,"title":"iteration-1","description":"","creator":{"login":"mnaser","id":435815,"avatar_url":"https://avatars.githubusercontent.com/u/435815?v=3","gravatar_id":"","url":"https://api.github.com/users/mnaser","html_url":"https://github.com/mnaser","followers_url":"https://api.github.com/users/mnaser/followers","following_url":"https://api.github.com/users/mnaser/following{/other_user}","gists_url":"https://api.github.com/users/mnaser/gists{/gist_id}","starred_url":"https://api.github.com/users/mnaser/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mnaser/subscriptions","organizations_url":"https://api.github.com/users/mnaser/orgs","repos_url":"https://api.github.com/users/mnaser/repos","events_url":"https://api.github.com/users/mnaser/events{/privacy}","received_events_url":"https://api.github.com/users/mnaser/received_events","type":"User","site_admin":false},"open_issues":0,"closed_issues":4,"state":"open","created_at":"2016-01-25T04:01:55Z","updated_at":"2017-01-16T20:57:36Z","due_on":"2016-02-04T08:00:00Z","closed_at":null},"comments":0,"created_at":"2016-01-22T00:32:56Z","updated_at":"2017-01-16T20:57:36Z","closed_at":"2017-01-16T20:57:36Z","body":"Attempt at a requirements document for the whole system\n[7 use cases]\nUser Stories:\nUS 1: As a puzzle maker, I want to create puzzles of different sizes and complexity with\nthe application.\nUS 2: As a puzzle solver, I want to assign black-white values to pixels in the grid of the\npuzzle.\nUS 3: As a puzzle solver, I want to check whether my current grid is a solution or not.\nUS 4: As a puzzle maker, I want to assign priorities to rows and columns of the puzzle\ngrid to guide the puzzle solver.\nUS 5: As a puzzle solver, I want to simultaneously consider several potential solutions\nfor a row (or a column).\nUS 6: As a puzzle maker, I want to inform the puzzle solver when there is a row or\ncolumn that fully determined by the current state of the puzzle grid.\nUS 7: As a puzzle solver, I want to be able to manipulate entire regions in a potential\nsolutions for a row (or a column) by dragging them horizontally (or vertically).\n\n[Discussion]\n[7 main scenarios for those use cases]\n|User to system -> User|\n|User-> system|\n\n[Include]\nUML use case diagram\n\n[Notes]\nMinimal info on non-system requirements [Drop security-> open system]\nNo Info on UI/Sample Code/\nNothing about priority for use cases\n\nhttp://users.encs.concordia.ca/~gregb/home/PDF/comp354_w2016_project_description.pdf\nIteration 1\nUser Stories: US 1, US 2, US 3.\nDocument: Software requirements specification (for all user stories). Each team will\nbe responsible to independently refine the user stories into software requirements. (Your\nteam is your customer)\nHints: Create small puzzles of size 4-by-4, 6-by-8, and 8-by-8 by randomly filling in a 2D\ngrid. It is the solution. Then calculate the headers from the 2D grid. Then remove most\nof the black pixels in the solution to leave you with a starting position for the grid.\nYes, you do want to make puzzles that are interesting to solve, and preferably a puzzle\nthat has only one solution.\n\nIteration 2\nUser Stories: US 4, US 5.\nDocument: Architectural and detailed design specification (for all user stories)\n\nIteration 3\nUser Stories: US 6, US 7.\nDocument: Test plan and test report\n\nEXAMPLE\nhttp://www.soberit.hut.fi/T-76.115/05-06/ohjeet/template/requirements.html\n"}}
{"actor":{"display_login":"provencher"}}