Team Foundation Server 2008

  • Uploaded by: Duong Cuong
  • 0
  • 0
  • May 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Team Foundation Server 2008 as PDF for free.

More details

  • Words: 1,548
  • Pages: 67
Trinh Minh Cuong [email protected]

Agenda Why project fails? Microsoft solution for Application Lifecycle Management 6 big things about Team Foundation Server Some reminds when applying TFS and Process Guidance in Vietnam

Notes! Today I do few demos since time is limited. You can run demos yourself at home. Ms Giang has copy of Visual Studio Team System 2008 testing environment: For XP, Vista, Windows 7, use Virtual PC 2007 to host For Windows 2008, use Hyper-V to host

You can download this slide from http://www.msdnvietnam.net

Can they be called …failed projects?

Q: Why project fails?

Things happen in software development Architecture and Design

Application Delivery Management Aligning IT with Maintaining Managing the Business Legacy Systems Complexity Quality Assurance and Test Balancing Managing Fixed Business or diminishing Demands with Budgets Project Risk Deployment and Operations Unpredictable Lack of Visibility Ineffective Team Delivery Times Into Communication and Quality Project Status Project Management Data Management

User Experience Requirements Management

Software Coding Quality Software Configuration Management

Today’s Project Management Problem Business requirements are not actively and well managed. Disparate tools and data.

Testing is not aligned with business objectives. Lack of defined process and guidance Limited visibility into project status to make decisions. Communication issues between team members.

Hard working day of project manager 8:00AM-8:30AM: Check email, browse web 8:35AM-9:30AM: Meeting with development team, write email while meeting 9:40AM-10:10AM: Review bug reports of test team 10:15AM- 11:00AM: Voice conference with Japanese customer to present project progress, get requirements 11:10AM-12:10AM: Revise spec document of developers 1:30PM- 2:30PM: Support new developer to fix a bug 2:30PM-2:50PM: Check email, browse web 2:60PM-4:00PM: Meeting with business analysis and management board 4:15PM-5:00PM: Check progress, discuss 1:1 with developers 5:10PM-5:45PM: Read an article in CodeProject 5:45PM-6:50PM: End of day unit test and code check-in of whole team

Our Approach

Focus on People, Process and Tools

Overcome Complexity Quality Mindset

Agile

Collaboratio n Transparenc y

Customizable

Highly integrated

Lightweight

Productive

Clarity Alignment Efficiency

Patterns and

Extensible

Low

Visual Studio Team Application Lifecycle Management System

Automation of the development process

Cross-platform support Traceability

Requirements tracking & status

Full history

Project Management & Governance Predictability

True status Work artifact relationships

Communication & Collaboration Visibility Transparency

Process workflow

Design for

Quality & Agility & Formality

Visual Studio Team System

Source Code Management

Source Control – Far better than Visual Source Safe, SubVersion, CVS,…

Major Capabilities Changesets Workspaces

Branch And Merge Shelving

Integrated into Work Item Tracking, Builds

Changesets Logical container of data related to checkin File and branch information Links to work items Check-in notes Comment Policy compliance Metadata (date, time, user) Unit of atomic check-in

Uniquely identified Numeric identifier Incremental

Integrated Check-in Atomic A changeset is guaranteed to have all changes from a check-in

Integrated Check-in policy applied (but override-able) Work Items associated Builds associated with Work Items Check-in notes All related to changeset Pending Check-in Window Notification possibilities

Check-in Policy Customizable, extensible

Work Item Association

Associate work items with each check-in to provide traceability from requirements to code

Parallel Development Multiple Releases Branching

start

V 1.0

branch

V 1.0’

merge merge

Merging V 2.0

V 1.1

Remember: Team Foundation Server is much more than a source code management tool !

Collaborate and Communicate by familiar tools

Collaborate & Communicate Team Foundation Server A unified project server

Designe

Architec

Business Analyst

Develop er

Database Profession

Tester

Project Manager

This way is good but not easy to share and archive

Question: List all possible ways to communicate in TFS? TeamExplore IE 6, 7, IDE of Visual Studio Team System

Your own application Through TFS API

r

8

Excel

Team Foundation Server

MS Project

Eclipse through TeamPrise

Outlook

Use Familiar Tools Team members can use tools they already know, including…

TFS+Eclipse: TeamPrise

TFS+Outlook: TeamCompanion

Import tasks from MS-Project to TFS

Manage Team Workflow and Process Guidance

Manage Team Workflow Work item tracking throughout the lifecycle Efficient management of tasks Flexible and customizable Enables trace-ability

Process Guidance

Microsoft® Solutions Framework is: Guidance on how to organize people and projects to plan, build, and deploy technology solutions successfully and effectively

It provides: An agile software development process A formal software development process Framework for customers and partners to implement custom software development process

Plan driven methods Artifact and milestone driven Documentation is formal and structured Planning cycle is formal and on-going Higher degree of project ceremony Team meetings, formal project reviews, documented status reports great deal of details Formal change control with Change Control Boards Project stage gates requiring formal approval in order to proceed. Well defined project roles with separation of duties. Development iterations tend to be few and long (measured in months, quarters, or greater)

Agile methods Code-based deliverable driven vs. Documents based deliverable driven People oriented with informal but constant communications Initial planning cycle is formal but on -going planning is "as needed” Lower project ceremony --> Work item assigning, auto metrics report generating. Limited team meetings, brief project reviews, documented status reports with low details Limited or no Limited or no formal change control within iterations Limited project stage gates requiring formal approval in order to proceed

MSF for Agile: iteration, roles

MSF for Agile: work streams & activities Architec

Business Analyst

Bug

Develop er

Tester

Work Item

FAQ about process guidance Q1: Can I mix water-fall with agile? A1: Yes. You can even create your own process template. Q2: Using TFS and process guidance ensures that my project will be successful? A2: The success of project depends on many factors. Human is most important factor. Using TFS and process guidance correctly helps your

Test Early and Often. Integrate work frequently

Cost to fix bug

Different Test Levels

A sample of testing strategy in VSTS

Different Tests in VSTS Unit Test: test again each function. (demo) Web Test: record web navigation step by step. Load Test: Simulate load of many web tests. Generic Test: Test using an application that wraps or call functions, services of target application. Manual Test: Write test scenarios into MS Word. Order Test: Combine above tests into

Code enhancing routines developer should run frequently Code Analysis for managed & unmanaged code

Unmanaged: reports possible defects in C++ source code. Common coding errors reported by the tool include buffer overrun, un-initialized memory, null pointer dereference, memory and resource leaks. Managed: reports information about the assemblies, such as violations of the programming and design rules set forth in the Microsoft .NET Framework Design Guidelines.

Performance Wizard Identifies bottle neck functions

Code Metrics measures maintainability,

complexity, inheritance depth, class coupling…

Integrate Work Frequently Full featured version control system Continuous Integration Relate work item to check-in Check-out on Edit Labeling Scheduled Builds Integrated Testings

Build Automation Team Build Extension of MS Build

Continuous Integration, scheduled, ad-hoc Provides build reporting back to TFS Integrates testing

Drive Predictability - Make Real-Time Decisions

Questions for PM? How often do you revise plan, Gantt chart because project delays? How can you estimate time, effort for a development task? How often do you check the Gantt chart to track schedule of project? At the end of each project, do you have updated report about who’s done what and other metrics?

Drive Predictability Integrated process templates help deliver predictable results MSF for Agile Teams MSF for CMMI Process Improvement Fully customizable Visit http://msdn.microsoft.com/enus/teamsystem/aa718795.aspx for more TFS process guidance templates

Traceability with VSTS Author requirements Assign and manage work items

Report project status Continuous integration of work items

Make Real-time Decisions Comprehensive business intelligence reporting system Real-time data Enabling critical decision making

Q: It is good or bad ?

Q: Where Do We Need To Do With This Situation?

Too many … appears at the end of project

Q: Tell me about this project?

Resource Leaks

Development Practices Too Loose

Project Velocity

Bug Rates

Interoperability-

Compatibility 2005 / 2008 VSTS 2005 TFS 2005

VSTS 2008 TFS 2008

Team Foundation Server Deployment Dev Team (Local)

Business User

Dev Team (Remote)

Build Server Win 2003 Server SQL Server 2005

Version Control Proxy (Remote)

Active Directory

HTTP / S TCP/IP

Team Foundation Server

Team Foundation Server: single server to scalable multi-tier servers TF S V STS Supports <450

Team Foundation Server 2010: Rosario

Understand Parallel Development First class branches Visualize branch relationships Drag & Drop Merging Track change across branches History Timeline

CrossAnnotate platform Conflict resolution Rollback

Manage Your Project Agile project management workbooks Work item linking and hierarchy Work item usability Rich text Links control HTML link control Drag & Drop

Traceability queries Query folders Excel & Project improvements Project round tripping

Some reminds when applying TFS in Vietnam People sticks to Plan methods. (Cô đọc trò chép, trên chỉ đạo, dưới làm)

Time management is not so good. Team work needs to be improved. PM acts as senior developer rather than PM. Most of testers do black-box test. Programmers do not want to do tester’s work, lazy to write unit-test. Process guidance is weak and not clear. Too many meetings but few executable actions. Changing tool but not changing attitude.

My humble advice Practice agile method, TFS in small scale project (2-4 people, less than 8 manmonths first). Enforce, remind process guidance, coding convention frequently and strongly. Share project documents in TFS portal rather than by email. Automate process to eliminate paper-work. Germ solution architect in your development. Attend more Microsoft trainings and

Xin cảm ơn các bạn !

Related Documents


More Documents from ""

June 2020 4
Thuc-tap-1.docx
December 2019 22
Dt Thi Nghiem Chxd2 - 2009
December 2019 12