Insurance Research Report - Criminology / Welcome | Welcome | Welcome
Welcome!
description
Transcript of Welcome!
Welcome!Management 421
Computer Science 350
OverviewProjectRolesSoftware Development Process
Extreme ProgrammingManagement/Developer Interaction in
Extreme ProgrammingPlanning Game
Questions/AnswersTeam meeting
What is the project?Course Scheduling System
Solve problems associated with generating student schedules. For example,
Provide online registration Given a list of classes and a set of constraints,
generate a schedule Given a student name, determine what classes the
student needs to fulfill degree requirements Prevent students from registering for classes for
which they lack the prerequisite All of the above, or none of the above.
What resources do we have?24 Students in CS 350
Programmers/Team Leaders9 Students in MGMT 421
Management Teams100 Students at Vietnam National University,
HanoiUser Interface DesignersSoftware Designers
2 InstructorsAccess to college advisors and administrators
(customers)
RolesManagersTechnical Team LeadersProgrammersCustomersDatabase AdministratorsInstructors
ManagersProvide directionWhat are we going to do?Based on customer/market needsManage personnelKeep the team productiveRepresent Business in the Planning GameWork with customers to determine needsWrite performance evaluations
Team LeadersProvide technical leadershipPrincipal Advisor to managementProvides technical assistance to team
membersMakes important design decisionsRepresent Development in the Planning
Game along with the rest of the development team
Write performance evaluations
ProgrammersRepresent Development in the Planning GameDesignWrite Program CodeWrite TestRefactorWrite performance evaluations
CustomersFaculty AdvisorsRegistrar’s OfficeAcademic AdvisingStudents
Database AdministratorProvide tools/methods to access mock college
databaseGenerate mock college database
Complete list of this year’s courses/times/datesFake student files
Brian Hudson (cs350/ITR)
InstructorsAvailable consultants
Technical IssuesManagement Issues
Upper managementWe determine and change the rulesEveryone works for us
Software Development Extreme Programming
Relatively new software development processVery clearly defined roles for the development
team (Development) and the management team (Business)
Extreme Programming Explained – Embrace Change Kent Beck, 2000
An incremental software development processOne of a family of “agile” development
processesLess formal specification and design
Frequent ReleasesA release is software that is delivered to the
customerIn extreme programming (XP), releases are
made frequentlyReleases consist of working code, but they are
usually snapshots of works in progress.Releases allow the customer to see how the
system is developing and react to problems at early stages
IterationsReleases are generally the result of a set of
iterations.Most of the planning in XP happens between
iterations.Releases are short, so iterations are even
shorter. As often as one per week
The Planning GameBusiness and Development play the planning
game to determine what to do next.
StoriesEach system feature is broken down to 1 or
more user "stories.”e. g., “a student drops a course,” “a use logs
in,” “the system is asked to find a specific course that fits in a given schedule.”
Stories on Index CardsStories are written on index cards
just enough to remember what they are. We don’t want lots of details.
Index card contentsname of the storydatebrief description of storynumber of "points" the story requires (cost)
estimates are not in hours, they are in points that have a consistent value
NotesAnything helpful
Stories are dynamic.rewrittenbroken up into smaller stories if they are too
largecombined with other stories if they are too
small.discarded
Three Phases of Planning GamePhases are cyclical - you will move back and
forth between the phases during the course of the game.Exploration
Determine what new things the system might do.Commitment
Decide what subset of all possible requirements to purse next
Steering Update the plan based on what Business and
Development learn
Exploration Determine what new things the system might
do. Moves
Write a story (Business) Estimate a story (Development) Split a story
CommitmentDecide what subset of all possible requirements
to purse next.Moves
Business Sorts by Value Three piles
Essential Significant business value Nice to have
Development Sorts by Risk Three piles
Cost estimates can be precise Cost estimates can be reasonably precise Cost estimates cannot be precise
Commitment Moves (continued)Set Velocity
Development tells Business how fast the team can work.
Choose ScopeBusiness chooses the set of cards that will be
included in the release
SteeringUpdate the plan based on what Business and
Development learnSteering Moves:
Iteration Business picks one iteration worth of the most
valuable stories to be implemented. Recovery
If Development realizes that it has overestimated its velocity, it can ask Business to specify a smaller subset of the current stories.
Steering Moves (continued) New Story
If Business realizes it needs a new story, Business removes stories with equivalent estimates and inserts the new story.
Reestimate If Development feels that the plan no longer
provides an accurate map of development, it can reestimate all of the remaining stories and set velocity again.
Steering Moves (continued) Velocity
The number of story points we complete each iteration is our "velocity."
Our next iteration will use our current velocity for determining the number of points we can commit to for the next iteration.
Release PlanningGiven velocity, Business gets good estimates of
the cost of featuresManagers use both cost and priority to schedule
the development sequence of features.
What Latitude to do we have as a team?Can we work on another project?Can we switch team members?Can teams cooperate?Can we write a web application?Can we use a different software development
process?
Make specific proposals.
What we are going to do now?Meet with the customer
Tomorrow 11:30 – 12:45 (Schewel 208)Learn more about the Planning Game
Friday 2:00-2:50 ( Hobbs 115)Chapter 3, Martin and MartinChapter 15, Kent Beck
Meet with your teamsArrange for team meetings ASAPStart playing the planning game
Determine what and when the first release will be (2-3 weeks)
Determine what the first iteration will be (1 week)