From c3276a06f2424ed99a386fc4c4cc862a6084b02f Mon Sep 17 00:00:00 2001 From: Polonkai Gergely Date: Tue, 17 Apr 2012 16:44:53 +0000 Subject: [PATCH] Moved most of the TODO file to the web pages themselves Signed-off-by: Gergely POLONKAI (W00d5t0ck) --- TODO | 209 ----------------------------------------------------------- 1 file changed, 209 deletions(-) diff --git a/TODO b/TODO index a436c6e..9bc872b 100644 --- a/TODO +++ b/TODO @@ -1,91 +1,5 @@ -What is OpenScrum? - -OpenScrum is a tool for agile development. It is a web based tool to manage -your project development. The stakeholder adds a project, gathers a team, they -both add their ideas to the project, and they are ready to go! - -Add your ideas, approve the ones uploaded by the team, and they can start -developing them. - -What OpenScrum is not? - -OpenScrum is not an issue tracker. Although the product backlog can be seen as -one, issues should be tracked in a separate software. The OpenScrum team uses -Bugzilla for this purpose. - -OpenScrum is not a project planner. Although the product and sprint backlogs -can be seen as one, it doesn't (and won't) provide all features of a project -planner. - How does it work? -First of all, a stakeholder and a developer must register on the site. Then, -the stakeholder must create a new project, and within the project, a team. -Then, the team must be filled with members. For this, the stakeholder may put -on some advertisement, so developers can contact him for details. Then the -stakeholder invites the chosen developers to his project's team. - -Then the idea pool is filled (of course, this can be started while inviting the -developers). When added, both parties need to add a positive vote on it to put -it in the product backlog. - -If the project is an already working one, it may have a bug tracker from which -you can import bugs as user stories. Be warned however, that bugs added this -way will only be fixed at the end of the sprint, so a better approach to this -would be to fix critical bugs between two sprints, or to dedicate a developer -who will not work in the next sprint, but fix bugs instead. - -The product backlog is priorized by the stake holder, and their development -time is estimated by the team. If the estimated time is larger than the sprint -length, the poster of the story is notified to break it down into smaller -stories. If he doesn't do it, the story remains in the backlog with the long -estimated time. Otherwise, the story is removed from the backlog, and the -poster can break it down into smaller parts. - -According to the sprint length, the user story estimations and priorities, the -team and the stakeholder create the backlog of the next sprint. The team will -use this backlog during the sprint. - -During the sprint, the team and the stakeholder should reduce communication to -a minimum level. However, sometimes it is required to discuss something. This -can be done within the specific user story using a chat function. The sprint -backlog can not be changed during a sprint, as it would change the sprint's -length. Instead, in the discussion, the development of the story can be halted. -This, of course will mean that tha story will not be finished at the end of the -sprint and will appear as unfinished in the review. - -OpenScrum also provides some help during the Daily Scrum. It provides a chat -interface on which Team members can discuss the last and next day. If the Team -holds the Daily Scrum in person instead, the Scrum Master should upload a brief -extract of the Daily Scrum for documenting purposes. These documents are unseen -by the Product Owner unless otherwise stated by the Scrum Master. - -During the development Team members can login anytime to see or update the -status of user stories. Some parts of these updates are published to the -Product Owner, so they can monitor the development's status. - -When the Sprint is finished, OpenScrum may come in handy for the Sprint Review, -either. - -Do I have to use this page? - -The projects you upload on OpenScrum.org can be seen by you and the development -team you assig to it. However, if you want to hide it even from our selected -few database administrators, you can buy the OpenScrum.org code to run it on -your intranet server. - -If you buy it, you get a one year read access to our Git repository, so you -will get all the patches and new features during that period. - -Terms -===== - -Product -------- - -Idea ----- - User story sources: Idea pool @@ -155,126 +69,3 @@ Sprints: • every sprint mst have a goal • at most one sprint must exist for each product at any given time - -DATABASE PLANNING -====================== - -User: - id: integer, unique - username: string, unique - password: string, hashed or crypted - role: enum of pig and chicken - scrumMaster: boolean, only one scrum master can exist - -Team: - id: integer, unique - name: string, unique - members: array of user ids, only pigs can be team members, one pig can be - the part of multiple teams - -Product: - id: integer, unique - name: string, unique - contact: text, may be omitted - productOwner: integer, unique, id of a user, must not be the scrum master - teams: array of team ids working on this product - -productBacklog: - id: integer, unique - productId: integer - storyName: string, unique - storyDescription: text - difficulty: integer, must be null during the difficulty vote, counts as an - accepted story otherwise - businessValue: integer - -ideaPool: - id: integer, unique - productId: integer - storyName: string, unique - storyDescription: text - difficulty: integer, optional - -difficultyVotes: - storyId: integer - userId: integer - difficulty: integer - reason: text, optional - -Sprint: - id: integer, unique - productId: integer - started: timestamp - title: string, must be unique among the same product's sprints - -sprintBacklog: - id: integer, unique - storyId: integer - teamId: integer - title: string - briefDescription: text - longDescription: text - hourRequirement: integer - -OpenScrum.org user stories -========================== - -• as the site owner, I want unregistered users to access the information pages - and public Products only -• as the site owner, I can decide if I want to allow anyone to register -• as a possible later Product Owner, I can register my company providing a - contact e-mail address, and optionally uploading a brief description of it -• as a possible Product Owner or Team member I can register myself by choosing - a username and password, providing a contact e-mail address, and optionally - uploding my CV with references and some details about myself -• as a registered user, I am able to log in to the site using my chosen - username and password -• as a Product Owner I can create a new Product on behalf of my company -• as a Product Owner I can create advertisement about my product to find - developers for my Team -• as a Product Owner I can invite developers to my Team -• as a Product Owner I can choose a possible Scrum Master from my Team -• as a Team member I can vote with a plus or minus on the chosen Scrum Master -• as a Product Owner I can set who can add items to my Product's Idea Pool: me, - the Team, or anyone -• as a Product Owner, Team member or a normal registered user I can add items - to the Product's Idea Pool depending on the Product's settings -• as a Product Owner or Team member I can vote with a plus or a minus on the - Idea Pool items depending on the Product's settings -• as a Team member I can estimate the difficulty or required time for each item - in the Idea Pool -• as a Product Owner, I can see the difficulty or development time estimated by - the Team -• as a Product Owner, I can promote one of the Team members to Scrum Master -• as a Team member, I can put a positive or negative vote on the promoted Scrum - Master. If enough positive votes are gathered, the promoted member will - become the Scrum Master. If enough negtive votes are gathered, the selected - person will automatically be demoted, and the Product Owner has to promote - again -• as a Product Owner or a Team member (or optionally, as a regular user, if the - Product is public), I can add my ideas to a Product's Idea Pool - -• as a chicken, I can see if my product has an active sprint -• as a product owner, I can enable or disable chicken access to sprint details -• as a team member, I can see the backlog of each products, and can vote for - the difficulty of each story -• as a product owner or customer, I can see the idea pool, and can accept or - decline the ideas in them. If I accept them, they automatically get into - the product backlog -• as a product owner or customer, I can define a business value for each item - in the product backlog, thus accepting them from my side -• as a team member, I can vote for the difficulty of each user story in the - product backlog or the idea pool with an optional reason, thus accepting - them from my side -• as a product owner, I can import tickets from ticketing systems. Bugs get - into the product backlog, feature requests go to the idea pool -• as a product owner, I can start a new sprint for my product -• as a team member, I can help the product owner in creating a new speint, by - dividing the user stories into tasks, predicting an hour requirements for - each one -• as a product owner or customer, I can edit user stories with high difficulty, - so it breaks into smaller tasks, or I clear some things -• as a team, we can agree on how we will solve a task, and we can add and - modify these details to an open task anytime -• as the scrum master, product owner, and optionally as the customer, I can see - statistics and charts about my ongoing sprint