getting started with starteam enterprise advantage preconference tutorial

81
Getting Started with StarTeam Enterprise Advantage Preconference Tutorial

Upload: cathleen-matthews

Post on 11-Jan-2016

227 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Getting Started with StarTeam Enterprise AdvantagePreconference Tutorial

Page 2: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Agenda

Software Configuration Management Concepts StarTeam Concepts and Architecture Basic StarTeam Configuring a New StarTeam Server Customizing Alternate Property Editors Customizing StarTeam Web Edition Layouts Customizing StarTeam Workflows Custom Dynamic Tools Integrations

Page 3: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Software Configuration Management Concepts

Page 4: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Software Development Lifecycle

The period of time that begins when a software product is conceived and ends when the software is no longer available for use.

SDLC typically includes these phases Concept Requirements Design Implementation Test Installation Maintenance Retirement

Page 5: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Capability Maturity Model

A conceptual framework consisting of five levels: Initial: Ad hoc, chaotic and heroic Repeatable: Basic project management control

Requirements Management, Project Planning/Tracking, and SCM

Defined: Organized software engineering process Clear responsibility, training, reviews and intergroup coordination

Managed: Quantitative process measurement Software metrics and quality management

Optimized: Continuous process improvement Defect prevention, Technology and Process Change Management

Page 6: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Capability Maturity Model

Page 7: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Business Value

Category MedianTotal yearly cost of Software Process Improvement (SPI) activities

Years engaged in SPI

Productivity gain per year

Early detection gain per year (defects discovered pre-test)

Yearly reduction in time to market

Yearly reduction in post-release defect reports

Business value of investment in SPI (value returned on each dollar invested)

$245,000

3.5

22%

35%

19%

39%

5.0

Source: Software Engineering Institute, CMU/SEI-94-TR-13, page 15.

Costs

Benefits

Page 8: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Business Value

(Years of Software Process Improvement)

4.0

5.04.2

6.4

8.8

0

1

2

3

4

5

6

7

8

9

Bull Hughes Aircraft TexasInstruments

Tinker AFB Schlumberger

Business Value Ratio of Software Process Improvement for 5 Organizations

Business Value Ratio

(3.5) (6.0) (6.0) (5.0) (3.5)

Source: Software Engineering Institute, CMU/SEI-94-TR-13, page 14.

Page 9: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

What is Software Configuration Management?

SCM is the art of identifying, organizing, and controlling modifications to the software being built by a programming team.

The goal of SCM is to maximize productivity by minimizing mistakes.

Benefits of SCM include: Increased development productivity Improved project control Reduction in defects Faster problem identification Greater customer goodwill

Page 10: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Configuration Items

An object within a computer environment that can be uniquely identified and individually manipulated.

Configuration Items include: Requirements Specifications Designs Change Requests Tasks Tests Source Code

Any digital asset used to develop and maintain the software system

Page 11: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Baselines

The configuration of a set of configuration items at a discrete point in the software development lifecycle

Typical baselines: Requirements baseline

The basis against which the software is authenticated

Design baseline Allocation of functionality to different parts of the system

Product baseline Completed software product delivered for system integration

Page 12: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

SCM Plan

Roles and responsibilities SCM Management

Relationship of SCM to SDLC Identification of Configuration Items

Change Management Change Request Change Control Board

Configuration Accounting Reports Audits

Page 13: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

StarTeam Concepts and Architecture

Page 14: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Who approved this change?

How much is left to do?

How do we know when we are finished?

Didn’t we test for this?

What was fixed in this build?

Didn’t we fix this already?

Who made this change?

But it works on my machine!

Why are they working on that?

Do we have that build?

Did we update the model?

Is this code documented?

Why is it taking so long?

The Need for Control

Page 15: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial
Page 16: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

RDDP Gives You Control

FocusDevelopment is for approved requirements only

TraceabilitySpecific versions of development assets are linked to each other

VisibilityDevelopment assets are seen from the requirement perspective

Page 17: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Collaborative Process

Repository

JBuilder, Eclipse &Visual Studio

Page 18: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Benefits of RDDP

DefinitionEstablish more consistent requirements gathering, modeling and managementPotential 60-90% savings*

DevelopmentEstablish better processes for software version, configuration, and change management Potential 40-80% savings*

VerificationCreate separate quality assurance control & strong testing processes Potential 30-90% savings*

* Source: Meta Group

Page 19: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

What is StarTeam?

Requirement Publication

Change Management

Team Discussion

Task Allocation & Tracking

File Management

Customizable workflow

Open Customizable Platform

Web-Centric Architecture

Secure

Distributed Repository

Automatic Linking

Page 20: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

StarTeam Architecture

Secure Efficient Internet Command Interface

Starbase Server

DatabaseStarTeam PVCS VSS

All communication via TCP/IP directly over the Internet!

StarTeam SDK - Java/Com based API

StarD

iskE

xplorer

Web E

dition

Cross-P

latform C

lient

Com

mand

Line

Dynam

ic T

ools

Notification A

gent

CaliberR

M

Import

JBuilder

Eclipse

Visual S

tudioD

elphi

Together

ControlC

enter

MS

Project

Oracle, MS SQL Server or DB2/UDB

StarTeamWin 32Client

Secure Efficient Internet Command Interface

Page 21: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

StarTeam Basics

Page 22: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

The StarTeam Product Family

Major Features StarTeam Standard StarTeam Enterprise StarTeam Enterprise Advantage

Configuration Management

√ √ √

Change Requests √ √ √

Tasks √ √

Requirements √

Customization √

Workflow √

Dynamic Tools √

Notification Basic Basic Customizable

Page 23: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Installers

StarTeam Server StarTeam MPX Server StarTeam Clients

Client for Windows Cross-Platform Client Web Edition StarDisk Command Line

StarTeam Extensions Core Extensions Documentation Samples CaliberRM Import Utility

Workflow Designer Layout Designer Notification Agent StarTeam SDK

Page 24: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

StarTeam Object Model

Containment Hierarchy Servers contain Projects Projects contain Views Views contain Folders Folders contain Items

Item Types Files Change Requests Tasks Topics Requirements

Page 25: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Projects

Page 26: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Views

Page 27: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Folders

Page 28: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

File Component

Page 29: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Change Request Component

Page 30: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Topic Component

Page 31: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Audit Component

Page 32: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Task Component

Page 33: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Requirement Component

Page 34: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Detail Pane

Page 35: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

History Pane

Page 36: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Label Pane

Page 37: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Link Pane

Page 38: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Reference Pane

Page 39: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Process Items

Page 40: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Implementing RDDP

Check out files to the local

workstation for editing

Local Workstation

Link

StarTeam automatically links the development assets

Publish defects from Test Director or enter directly in

StarTeam

Publish requirements from

CaliberRM or enter directly into

StarTeam

Select a Requirement,

Change Request or Task and check in all

modified files

Page 41: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

CR Driven Development

MercuryTestDirector

Bug 89Out of date logo on web site

and all applications

StarTeamChange Request 58

Out of date logo on web siteand all applications

File: Main.cppRevision: 1.1

File: Layout.javaRevision: 1.1

File: Logo.jpgRevision: 1.4

Page 42: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Task Driven Development

Microsoft ProjectTask 1:Change LayoutTask2: Replace Logo

StarTeamTask 1: Change

Layout

StarTeamTask 2:Replace Logo

Revision: 1.1

File: Layout.javaRevision: 1.1

File: Main.cppRevision: 1.2

File: Logo.jpgRevision: 1.4

Page 43: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Requirement Driven Development

CaliberRMRequirement

128User must logon to

system

StarTeamRequirement 5

User must logon to

system File: Main.cppRevision: 1.1

File: Layout.javaRevision: 1.1

File: Logo.jpgRevision: 1.4

Page 44: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Configuring a New StarTeam Server

Page 45: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

StarFlow Extensions Project

A Special StarTeam Project Specifically named “StarFlow Extensions” Custom Alternate Property Editor JAR files Custom Dynamic Tools Workflow engine GUI components

Projects folder and subfolders Used to manage the scope of customizations

StarTeam Security Used to manage component visibility

Page 46: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Configuring the StarFlow Extensions Project

Drag the StarFlow Extensions folder into StarTeam Drag operation only works with Windows client

Only need to add the files in the Projects folder Minimum files needed for Alternate Property Editors

starflow-extensions.jar guicomponents.jar DesktopIndicator.dll

Additional files needed for Dynamic Tools cpc-extensions-1.0.0.jar java-icons.jar tool.jar toollocator.jar

StarTeam Tree control requires starteam-gui.jar Add the form JAR and Property Editor files

For example: ChangeRequest.Jar and ChangeRequest.PropertyEditor.xml

Page 47: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Deploying Alternate Property Editors

Open Project | Property | Editors Enable Alternate Property Editors

Locator is automatically deploys the resources used by the form Always installed with Windows client Launches the StarTeam Form Server for Windows Locator is not executed by the Cross Platform Client Syntax: Locator <propertyeditor.xml> For example: Locator ChangeRequest Also LocatorDebug

All Resources are specified in propertyeditor.xml files All resources must be checked into the Projects folder Resources are automatically deployed to workstations.

Page 48: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Custom Property Editors

Page 49: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Creating a Basic Workflow Definition

Start the Workflow Designer Create a New Workflow for an Item Type

For example: Change Request

Add the Workflow Control Property Field Name used in samples: Usr_StarFlowStatus

Add 2 values to get started For example: New and Open

Make Open (or your equivalent) the default value New (the initial step) is only used when an item is being created

Add 2 workflow steps to the diagram to get started Save <Item Type>.Workflow.xml

For example: ChangeRequest.Workflow.xml

Page 50: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

The StarTeam Form Server

Light-weight process to execute Java Virtual Machine Does not have to be restarted when forms are changed

Unlike the CrossPlatform Client

Double click on Sys Tray icon to shutdown manually Do not confuse with the “StarTeam Toolbar”

Displaying the first form takes longer Locator and LocatorDebug may be called from the

command line

Page 51: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Customizing Alternate Property Editors

Page 52: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Configuring JBuilder Libraries

StarTeam starteamNN.jar

StarTeam Extensions Starflow-extensions.jar Starteam-gui.jar Guicomponents.jar

Page 53: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Documentation

Add for StarTeam and StarTeam Extensions There are a TON of methods in these libraries

Page 54: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Configuring the JBuilder Pallete

Add new page Add Components tab JavaBeans in jar manifest JavaBeans with BeanInfo

Page 55: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Manually Adding JavaBeans

AddAndLinkButton AttachmentEditor ItemPropertyLabel ItemsPaneComponent OpenLinkedItemButton

PropagatingPanel RevisionCommentEditor StaticTextEditor TaskDependenciesComponent

Page 56: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Form Samples

Page 57: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Customizing Forms with JBuilder

1. Use JBuilder’s form designer

2. Add a new StarTeam property through StarTeam’s Advanced | Customize menu

3. Drop a new control on the form

4. Enter the new property name into the control

5. Check the new JAR into the StarFlow Extensions project

Page 58: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Enter the property name here to map the control to the StarTeam field

Adding custom fields

Page 59: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Customizing StarTeam Web Edition

Page 60: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Web Edition

Pure web browser interface Supports multi-file check-in/out Customizable property editors Workflow enabled Does not support

IDE Integrations MPX Server

Page 61: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Web Edition Form Designer

Page 62: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Customizing StarTeam Workflows

Page 63: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Workflow Designer

Workflow is separate from the form Defined in <Item Type>.workflow.xml

Example: ChangeRequest.Workflow.XML

Stored in the StarFlow Extensions project Automatically deployed when changed

Page 64: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Example

Page 65: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Workflow Properties Tab

General Item Type Workflow Responsibility Workflow Control Property Entry Step

Workflow Extensions A place to store custom workflow information in XML

Page 66: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Workflow Step Tabs

General The step name and exception time-out

Participants Who can see and who can change when in this state

Exception Notification Who to inform when in a step too long

Step Notification What to send to participants when entering a step

Form Options What controls are required, disabled or hidden

Status Notification Who else to notify, in addition to the participants, and what to send

Next Steps What steps will follow this step and conditions

Dynamic Defaults Workflow Extensions

A place to store custom step information in XML

Page 67: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Notification Agent Setup

Stores configuration in StarFlow Extensions project NotificationAgent.Conf.xml

Page 68: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Configuring a Test E-Mail Server

Sample: Setting up a standalone e-mail notification.rtf Free ArGoSoft e-mail server attached Instructions with screen shots Uses Outlook Express but can be used with Outlook Can be used with multiple user names

Page 69: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Running the Notification Agent

Can run the Notification Agent manually via Run Now

Page 70: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Example Notification

Page 71: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Custom Dynamic Tools

Page 72: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Dynamic Tools

Cross-Platform Client custom toolbarOnly available with the Cross-Platform Client

Automatically distributes custom toolsNo need for separate installation for custom tools

Integrates with the cross-platform clientMakes using custom tools and utilities easy

Toolbar buttons change based on component

Page 73: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Custom CR Tools

Custom View Tools

Page 74: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Custom Task Tools

Custom View Tools

Page 75: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Integrations

Page 76: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Integrations

Rich StarTeam Integration JBuilder and Eclipse/WebSphere

Source Code Control API Visual Studio, Delphi, C# Builder, etc. CaliberRM, Rational Rose, Together Control Center

Special Purpose Integrations Visual Studio .NET Web Projects Microsoft Project Oracle Developer

Page 77: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Rich StarTeam Integration

Direct access to StarTeam from IDE Cross-Platform Client embedded

Workflow enabled custom forms Dynamically deployed Supports all StarTeam types

Dynamic Tools accessible through toolbar

Page 78: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial
Page 79: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial
Page 80: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Where to get the StarTeam SDK

Download the complete StarTeam SDKhttp://www.borland.com/

Includes complete API documentation and basic samples

Download additional samples fromhttp://codecentral.borland.com http://www.elite-associates.com

Page 81: Getting Started with StarTeam Enterprise Advantage  Preconference Tutorial

Questions?