PROJECT DISCUSSION * you are expected to use Scrum for your project and certain Extreme Programming practices within the Scrum project management framework * the project needs to be able to have a small-but-useful first iteration, and be able to be "grown" from there in subsequent iterations * it needs to be able to have 3-4 reasonable iterations built in 2-3 week sprints * it needs to be one for which you can come up with *more* user stories than you will actually be able to implement, to give you more substantial planning/negotiating experience * you are expected to use open-source or freely-available or available-to-students software and hardware is required, to be fair to all teams; (unless there compelling extenuating circumstances, to be cleared with the instructor in advance) * because of potential issues, for now, teams cannot be paid for the CS 458 projects (any arrangements after the semester is up to the teams!) * at least one "real" client project will be being described to the class -- interested teams may "bid" on it by writing why they should be selected to work on that project * (maybe giving an order-of-preference IF another "real" client comes forward) * some combination of the client and instructor will select the team(s) to work on the project(s) * if you have or find a client you would like to propose for your project, your "bid" is to describe the project (1-2 paragraphs) and giving the name and e-mail of the person who is going to be your client representative; (if needed, I will ask you additional questions to be able to decide whether your bid is approved or not) * what about the other teams? you will need to come up with a project idea and find/finagle someone to serve as the "client" (might be one of our 2 volunteer-clients, might be another CS 458 team, might be other individuals with an interest in the project) * you would "bid" by describing the proposed project (1-2 paragraphs), and either give the name and email of your "client", OR why one of our available volunteers should want to be your "client" ^ if not selected, instructor will be figuring out which team is which team's client... * every approve project must have a "client" willing to do: * be willing to look over, give their input/opinions about user stories, acceptance criteria * be asked to give their input/opinions about the priority of user stories in the PBL * be willing to try out each sprint's result and accept or reject it, and give input on what they'd really like to see next * verify that the team touched base with them at the end of each sprint (e.g., a short email noting that they have) (a team MAY "bid" on a real project AND include a description of a back-up idea in case they are not chosen... <-- so hopefully they get something approved sooner) * WHEN are these "bids" going to be due? * will be due 11:59 pm on Friday, September 22 * with guide posted as to format A.S.A.P. * I will *try* to approve these on a "rolling" basis, so teams that submit sooner might get approval sooner * other important project goals * maintaining an evolving PBL is an expected part of the project! * ...part of this evoluation being based on client input is PART of this! * working TOGETHER *is* required, * using GitHub and your team's repo to submit course deliverables is required * what XP practices are expected? * User Stories, using the format described in class * frequent/small releases * continuous integration * test-infected development * unit-testing (even if as stone-knives as user-does-a-b-c-expects to see d actually saw f) is expected * acceptance testing is expected * simple design * refactoring * collective code ownership * coding standards * pair programming * TEAM MEETINGS - * discuss where you are with regard to project ideas, which direction you'd like your "bid" to go in, etc. * create ONE file the team, 458lab4.txt, submitted with a lab number of 84 (this will be problem 1 on the next homework, probably...) * names of team members who are here and participating in the meeting * write a complete sentence answering the question, do you already have a definite project idea? * write a complete sentence answering the question, do you already have a definite client; if NO, also answer if you are interesting in being considered for one of the "volunteer" clients * you are expected to meet until 10:50 (leaving early is NOT ok...)