การบริหารโครงการซอฟต์แวร์Software Project ManagementKritKamtuoMicrosoft Innovation Center Outreach - ManagerE-Saan Software Park , KhonKaen Universitykrit.k@micthailand.net
What is Software ?
What is Application ?
Software & ApplicationWhat is software ?= Science & ArtWhat is application ?= Output of user requirementKey differenceSoftware = DomainApplication = Sub Domain
 Average cost overrun:  45%
 Time overrun:  63%
 Functionality delivered on average: 67%
 Software Errors: $59 Billion US Economy– US National Institute of Standards & Technology NISTThe State of the IndustryProject success is rareSucceededChallengedFailed32%44%24%200835%46%19%200615%34%51%2004Source: Extreme Chaos, The Standish Group International, Inc., 2004, 2006, 2008
The State of the IndustryProject success is rareSucceededChallengedFailed32%44%24%200835%46%19%200615%34%51%2004Lack of integrated toolsSeparation of business and technologyPoor team communicationProject tracking vs. project managingInflexible or immature processesDifficulty balancing productivity and predictabilitySource: Extreme Chaos, The Standish Group International, Inc., 2004, 2006, 2008
What is Project Management ?
Stakeholder(ผู้เกี่ยวข้อง)Software ProviderExecutiveSystem AnalystDeveloperTesterImplementerQuality AssuranceDocument ControllerSoftware ConsumerExecutiveProject LeaderSystem AdminPrimary UserSecondary UserPM
Skill for PM.Business ThinkingFinancialEconomicLocal & Global InformationNews, Conversation, Research etc.Software Development LifecycleSoftware Management ProcessSoftware Development ProcessTeam ManagementEtc.
Software Development Lifecycle(SDLC)
Software Management Process
Software Management ProcessSoftware Management ModelTFS (Team Foundation System, by Microsoft)TSP (Team Software Process, by SEI)PSP (Personal Software Process, by SEI)CMMIISO 29110Etc.
Software Development ProcessSoftware Development ModelWaterfallSpiralExtreme ProgrammingAgile **Rational Unify ProcessCMMI
Team ManagementMeeting – Update Project Status, Problem, Brain StromDailyWeeklyMonthlyReviewRequirementAnalysis & DesignImplementationMonitor CommitmentRisk Management
Meeting & Brain Strom TipsObjectiveInvite AttendeeNoteSound RecordVideo RecordOne noteSummaryShare EverythingVia EmailVia SharePoint
Microsoft ProjectManage ResourceManage TimeManage TaskManage CostReporting
WorkshopScientific Calculator
CreateTaskDurationStartFinishPredecessorsResource Names
View in MS ProjectCalendar : Over allGrant Chart : DetailNetwork Diagram : Flow ChartTask Usage : Man/Day, Man ProgressTracking Grant : Project ProgressResource Graph : OverloadResource Usage : Resource/Time
Visual Studio- ALM
Visual Studio 2010
What is ALM?The coordination of development life-cycle activities, including requirements, modeling, development, build, and testing, through
Enforcement of processes that span these activities
Management of relationships between development artifacts used or produced by these activities
Reporting on progress of the development effort as a wholeWork item tracking ensurestraceability.Work Item Database & QueriesMetrics Warehouse
Comprehensivebusiness intelligenceenables                                    real-time				decision making
You can use toolsyou already know, including…
SLAProgram ManagementDeploymentGovernanceDisaster RecoveryStandards ComplianceALM and Visual Studio 2010……
 Architecture FeaturesUML modelingMicrosoft has joined OMGUse Case, Activity, Sequence, Component and Class DiagramsReverse engineer from codePush down for code generation via Domain Specific Language (DSL) modelsLayer Diagram for architecture enforcementArchitecture ExplorerMultiple views of existing systemShows relationships between system elements
UML Activity Diagram
UML Use Case Diagram
UML Sequence Diagram
UML Component Diagram
UML Logical Class Diagram
Model Explorer
Architecture Layer Diagram
Architecture Explorer
IntelliTrace(Historical Debugging)Reduces debug “cycling”Start DebugEncounter defectDrop into debuggerMove back through execution history to locate defectHistorical debug trace enables debugging offline test runs“As you sit in the debugger, being able to move backwards while in the debugger (or attach the execution log to a bug) has to be the killer feature coming up in the entire Visual Studio 2010 release.”  -John Robbins
IntelliTrace
ProfilingUnderstand how an application uses memory and where it spends its time.Optimize intelligently.
Coded UI TestingEnables verification of UI functionality.Record test actions and VS will generate the resulting code.Assertions can be added to verify functionality.Like all VS tests, results can be stored in TFS.
Coded UI Testing Walkthrough
Coded UI Platform Support
Test Impact AnalysisIdentifies tests impacted by code changesSignificantly reduces test time
Testing FeaturesQA Professional focused interfaceWork Item based test case management, test planning and status trackingFocused on RequirementsIdentification of high-priority testsRobust manual testing functionalityTest definitionUser-friendly Manual Test RunnerDefect data capture toolsAutomated user interface testing
Visual StudioTeam Test Elements
Test Elements: Define Manual Test
Test Elements: Define Test Suite
Test Elements: Manage Test Plans
Requirements Focused
Microsoft Test Runner
Better Tester / Developer CollaborationAutomatically gathers defect and runtime detailsEliminates the “ping pong” effectEliminates the “No Repro” problem
Automatic Test Data Collection
Rich Defect Entry
Defect Data: Steps to Reproduce
Defect Data: Build & System Config
Test Lab BenefitsSimplifies environment setupSimplifies testing multiple configurationsEnables reverting to baseline configurationProvides checkpoints to aid defect resolutionImproves test hardware utilization
Test Lab Management GoalsVirtualize test lab resourcesLower technical requirements for test environment creationEnable environment recreation for defect resolution
Test Lab Management – Define Environment
Test Lab Management – Run Tests
Test Lab Management – Capture StateDev clicks on lvr link & selects connect to snapshot of the environment
60Dev is able to access the snapshot’ed environment via LE viewer
Team Foundation Server 2010
TFS 2010 PillarsAdministrationTestingProject MgmtHighlightEasily setup and configure TFS to run in your environmentGreat collaborations between dev & testContinuous quality validationRichly capture project plans in TFSEasily track & report on project statusWizard-based setup & config experience
Automated install of dependencies
Deployment on Vista and Win 7
Easily expose TFS to the Internet
Scale-out
Reporting Services and Sharepoint optional
Consolidate servers
Restore, move, and archive project data
Test case management
Requirements traceability
Detailed quality reporting
Manual test runner
Record & playback
Automated UI testing
Intellitrace
Gated checkin
Hierarchical work items
Excel-based agile project management tooling
Generate Excel reports of work items from a work item query
Project dashboards in MOSS & Sharepoint
Typed work item linksFeatures
And a Whole Lot More…Version ControlWork Item TrackingBuild AutomationOffice IntegrationAdministrationReportingTeam ProcessWeb AccessTestingBranch visualization
Conflict resolution
Improved history
Work item hierarchy
Typed links

Software Project Management - NESDEV