2018 – ALM for Borland Developer Studio

Download Report

Transcript 2018 – ALM for Borland Developer Studio

2018 – ALM for Borland Developer Studio  John Kaster  Principal Engineer, Borland

Agenda

   

Borland Developer Studio

StarTeam CaliberRM Together for Delphi     Live source Audits Metrics Documentation     Live templates Unit testing Model audits Deployment manager

Borland Developer Studio 2006 – “All in One”

 Delphi 

VCL, Win32, IntraWeb

 C++Builder 

VCL, Win32, IntraWeb

BDS 2006 Developer Studio IDE Delphi Win32 C++Builder Win32  Delphi for .NET

VCL.NET, Winforms, ASP.NET WebForms, ECO

 C#Builder for .NET

Winforms, WebForms, ASP.NET, ECO

Delphi .NET

C#Builder .NET

BDS 2006 Architecture Overview

Desktop / Rich Client dbExpress VCL (Win32) BDE C++ Web VCL.NET

Database Delphi CaliberRM StarTeam Borland ALM Together IntraNet ECO BDP .NET WinForms and ASP.NET

C#

Delphi 2006 Architecture Overview

Delphi

Desktop / Rich Client Web dbExpress VCL (Win32) BDE VCL.NET

Database IntraNet ECO BDP .NET WinForms and ASP.NET

C++ C#

Delphi

CaliberRM StarTeam Borland ALM Together

C#Builder 2006 Architecture Overview

C#

Desktop / Rich Client Web dbExpress VCL (Win32) BDE VCL.NET

Database IntraNet ECO BDP .NET WinForms and ASP.NET

C++

C#

Delphi CaliberRM StarTeam Borland ALM Together

C++Builder 2006 Architecture Overview

C++ Win32

Desktop / Rich Client Web dbExpress VCL (Win32) BDE VCL.NET

Database IntraNet ECO BDP .NET WinForms and ASP.NET

C++

C# Delphi CaliberRM StarTeam Borland ALM Together

Agenda

    Borland Developer Studio

StarTeam

CaliberRM Together for Delphi     Live source Audits Metrics Documentation     Live templates Unit testing Model audits Deployment manager

StarTeam

 Concepts  Features  Integration

Managing the application lifecycle

By identifying those areas that are

impacted by change

, the Product Manager is better prepared to effectively manage the evolution of the application.

Key areas include

:  Product Management  Change Request Management  Build, Promotion, and/or Release Management  Overall lifecycle asset or Project Management

Making the case for configuration & change management

development process,

and CM is a method by Ovum Evaluates: which companies can Configuration Management keep track of that process.”

Hurwitz Group

What is SCM ?

 Software Configuration Management (SCM)  A discipline that supports and controls modifications to all key assets within a software development lifecycle  Integrates with all other lifecycle stages and tools  The primary components of an effective SCM solution include ALL of the following:  Version Control Process Management    Audit and Security Change Management Task Management Build Management Release Management

Common SCM Tasks

 Version Control  Check out/check in    Revision history Branching and merging Project views  Change Management   Defect tracking Enhancement lists  Requirement specification  Linking/traceability  Task Management   Task creation/status Recording work  Process Management  Workflow definition     Entry/exit criteria Notifications Approval tracking Security enforcement  Build Management  Compilation  Identifying dependencies  Release Management  Labeling   Promotion States Deployment

What is StarTeam?

StarTeam

is a Software Configuration Management (SCM) and Change Management Solution.

StarTeam Is The “M” In ALM

 Software Configuration and Change Management (SCM)  Integrations are vital to success

Together

®

JBuilder

®

C++Builder

®

C#Builder Delphi

®

CaliberRM™ StarTeam ®

Optimizeit

Suite Enterprise Server Janeva Interbase

What is StarTeam ?

 Requirement Publication  Change Management  Team Discussion  Task Allocation & Tracking  File Management  Customizable Workflow  Customizable Forms  Automatic Linking  Open Customizable Platform  Web-Centric Architecture  Secure

Benefits of An Integrated Repository

ALM Apps

CaliberRM

Together

MS Project

TestDirector

Remedy

etc.

SCM Archives

StarTeam

PVCS

VSS StarTeam Server

Version Management

Change/Defect Management

Requirements Management

Task Management

Electronic discussion Client Desktops Windows Linux Unix Java Enabled

StarTeam UI

JBuilder

C++Builder

C#Builder

Delphi

Eclipse/WSAD

MS Visual Studio, .NET

Oracle Developer

Web Browser

SDK

Current StarTeam Integrations

Application-Specific  Borland C# Builder  Version , 2006  Borland C++Builder  Versions 5, 6, 2006  Borland Delphi  Versions 6, 7, 8.NET, 2005, 2006  Borland JBuilder  Versions 8, 9, X, 2005, 2006  Eclipse Framework  Versions 1, 2.1, 3.x

 IBM WSAD  Versions 4.0, 5.1

 Mercury TestDirector  Versions 7.5, 7.6, 8.0

 Microsoft Project  Versions 2000, 2002, 2003  Microsoft Visual Studio (Web Projects)  Versions 6, .NET, .NET 2003  Oracle Developer  Versions 6, 2000 SCC Integrations  Borland CaliberRM  Versions 4.1, 4.2, 5.0, 5.1, 2005  Borland CodeWright  Versions 6.6, 7.0

 Borland Together  Versions 5.5, 6.0, 6.1

 Microsoft Access  Versions 2000, 2002  Microsoft Visual Studio  Versions 6.0, .NET, .NET 2003  Rational ROSE  Versions 2001, 2002 release 2  Sybase PowerBuilder  Versions 8.0, 9.0

Unified Repository For All Assets

StarTeam’s unique Project and View definitions provide unlimited flexibility for sharing/restricting assets All asset types are stored within the same project and folder structures StarTeam provides a single, integrated interface for managing files, change requests, requirements, tasks, and topics

Automated File Status Tracking

Real-time file status indicates how working folders compare to latest server versions “Group By” options let developers perform bulk operations quickly History view shows all revisions and identifies which revision working version is based on

Flexible Branching and Merging

Powerful branching and merging capabilities make parallel development easy, no matter what the size of the team or the number of concurrent releases Viewing branches or performing “time travel” is just a matter of a few Graphical wizards quickly create branches and provide prompts for merging when necessary

Customizable Filters and Queries

Custom filters and queries let the user select exactly how and what data is presented in the object browser panes Options include sorting, grouping, queries, context, and column order and membership These filters and queries can either be user-specific or “public” objects that any other StarTeam user can select Filter definitions are defined graphically, without the need for programming experience

Integrated Task Management

Work records can be added by StarTeam users to identify actual time spent performing task and are synchronized back into Microsoft Project Tasks are native objects that the StarTeam Server understands Tasks can be entered in StarTeam or synchronized from Microsoft Project

Customizable Workflow & Forms

Alternate Property Editors provide custom user interface and can be setup for all object types Alternate Property Editors are also stored in StarTeam Server as configuration items Graphical workflow definition allows customization of StarTeam process rules and enforces standards Make the process fit your environment - not the other way around!

Workflow definition stored in StarTeam Server as configuration items so client deployment is automatic

Delphi 2006 Embedded Integration

Embedded IDE Client provides full StarTeam functionality within the developer’s environment without and context-switching Integrations are subject to all process rules and workflow and security restrictions just like any other StarTeam client type

BDS integration

  Multi-level backups with History view      StarTeam integration  Main menu item  StarTeam Project management  Create   Check in/out create directories     File renames are tracked Embedded client External client launching Project Manager  Project groups  Manage associations for project groups Structure pane folder view Items pane files open in IDE History view is StarTeam aware locking/unlocking/merging Change requests

StarTeam Functionality Matrix

StarTeam Feature

Support for Named Licensing Support for Concurrent Licensing Clients included: Win32, CPC (Java), CMD-Line Clients Included: WebEdition Clients Included: StarDisk Components Supported: Files, CR’s, Topics Components Supported: Tasks Components Supported: Requirements Open Integrations (SCC and Application-specific) Mercury TestDirector Integration StarTeam MPX Server Customizable Event-Based Workflow Customizable Forms Database Customization (adding fields) Support for a variety of Relational DB Systems Included in Enterprise and Architect

Standard

 n/a  n/a (option)  n/a n/a  n/a (option) n/a n/a n/a 

Enterprise

   (option)    n/a  (option) (option) n/a n/a  

Enterprise Advantage

         (option)     

Demonstration

Additional information

 Introduction to StarTeam integration in Delphi 2005  http://bdn.borland.com/article/0,1410,32959,00.html

 Moving a Visual SourceSafe project to StarTeam  http://bdn.borland.com/article/0,1410,33011,00.html

 StarTeam community on BDN  http://bdn.borland.com/starteam/

Agenda

    Borland Developer Studio StarTeam

CaliberRM

Together for Delphi     Live source Audits Metrics Documentation     Live templates Unit testing Model audits Deployment manager

What is Requirements Management?

A continuous process of managing requirements from their inception to implementation and maintenance.

Requirements Management:

Ensures a project meets end-user needs that are feasible and within approved project scope.

Establishes a common understanding of:

 

Business Requirements User Requirements

 

Functional Requirements Nonfunctional Requirements

Manages changes to those requirements.

What the Customer Needs

Different Interpretations

Marketing Sales IT Engineering Manufacturing Finance

The Source of Software Defects

Requirements Errors (56%) Design Errors (27%) Other Errors (10%)

Source: James Martin, An Information Systems Manifesto

Coding Errors (7%)

The Cost to Fix Software Defects

Requirements Errors (82%) Design Errors (13%) Other Errors (4%)

Source: James Martin, An Information Systems Manifesto

Coding Errors (1%)

Sources of Defects

Logic Design 28% Others 7% Data 6% Interface 6% Documentation 2% Human 5% Environment 5% Requirements 41%

Note: Most Studies have shown that requirement errors typically constitute between 40 and 60% of the total number of errors, while design and code defects combined attribute to only a third of the errors. That’s a pretty significant difference.

*From a U.S. Air Force Project , F. Sheldon, 1992

Reliability Measurement from Theory to Practice

Software as Problem Solving

Problem Solution Gather Data Linear Method Designer Process Analyze Data Formulate Solution Implement Solution Time

Pattern of Cognitive Activity of One Designer

The Quality Lever

Requirements 40-100x

Analysis & Design 30-70x Coding 15-40x Development Testing 10x Acceptance Testing 3-6x Production 1x

Product Quality

- This data from Boehm: Software Engineering Economics

Three approaches to requirements automation

Document-centric requirements

 CaliberRM 6.0 provides many benefits in a very easy to use GUI. Through the use of HTML, and improvements in editing and document production, CaliberRM is leading the way. CaliberRM is now the momentum leader in this space.

Developer-centric requirements

 CaliberRM integrations into C#B, TCC, TJB, VS.NET, and Delphi (C++, JB and Eclipse coming soon) ensure that the developers are always and easily kept “in the know.” If the developer isn’t made aware of the requirements, why bother doing them? CaliberRM is the clear leader in this space.

Infrastructure-centric requirements

 CaliberRM has an open API and the ability to amplify the Voice of the Customer throughout the ALM. Live link integration without the need for import / export is also a clear technical advantage. CaliberRM is the clear leader in this space.

Building a requirements community…

Requirements  Begin with requirements experts…who understand the importance of requirements automation  Add subject matter experts…who want to express requirements in the ways that make sense to them  Support the management of additional definition artifacts…Use Cases, Scenarios, Storyboards, Requests, User stories, etc.

 Provide a variety of output formats… targeted at various demographics  Use change notification…to ensure everyone stays in the loop  Integrate with other key ALM technologies…and customize to fit your process…

Metcalfe’s Law

Metcalfe's Law: the value of a network grows by the

square of the size of the network

.  Originally referring to network theory, it can also be extended to the “network” of subject matter experts and stakeholders defining a system (or building an ALM project) – a “network of people” or “capability network”  Due of Metcalfe's Law, the largest “network” always wins over smaller networks, even if the smaller network has some larger initial value due to some special-purpose feature or benefit.

 As the size of the network increases, the value accelerates

Augmentation and aggregation are key…

Data Information Knowledge Intelligence Power

Requirements

ALM Fundamentals

 Attention is the scarce resource – solutions must help clients manage signal-to-noise ratio  Unfiltered information must be available – solutions which require summary translation from medium-to-medium change the message  Context switching must be minimized – solutions which force users to continually change contexts steal productivity  Member aggregation is more important than the amount or type of resource owned  Value increases exponentially as stakeholders are engaged in the process

Connecting “disciplinary super-hubs” to your ALM Testing CCB Discussions ALM Project Tasks Requirements SCM

Metcalfe's Law accelerating benefits…

35000 30000 25000 20000 15000 10000 5000 0

Size of Network (People)

Metcalfe's Law: “The ALM Power Curve”

35000 30000 25000 20000 15000 10000 5000 0

Size of Network (People)

What happens without integration?

Cutting the value network into pieces…  The law is usually quoted in terms of growth of the network, but we can

run Metcalfe's Law in reverse

and use it to characterize the

effect of cutting a network into pieces

: 

The value of partitioning a network into N isolated components is 1/N'th the value of the original network.

Jakob Nielsen 's Alertbox, (http://www.useit.com/alertbox/990725.html)

Metcalfe in Reverse – “Non-integrated Power Curve(s)” 35000 30000 25000 20000 15000 10000 5000 0

Size of Network (People)

So, what does that mean?

20000 15000 10000 35000 30000 25000 Poorly Integrated 5000 0

Size of Network (People)

 Without tight integration, potential value lies untapped  Momentum from each discipline is self contained  No cross-project synergies  With tight integration – momentum, velocity and synergy help deliver value 35000 30000 25000 20000 15000 10000 5000 0 Tightly Integrated

Size of Network (People)

CaliberRM 2005 Release 2 - New Features

Enterprise Offerings

   Windows® 2003 server support Borland license server support SSL support  Variable port selection 

Integrations

    Borland Developer Studio 2006 CaliberRM StarTeam traceability StarTeam requirements publisher Create StarTeam CR from within CaliberRM

New IDE integration features for CaliberRM

 Edit and view (D2005 could only view)  Estimate Pro, if installed  Place information from Caliber into a project and keep it up to date (all personalities)  Search via serial # to find requirements  View and participate in discussions

Demonstration

Agenda

    Borland Developer Studio StarTeam CaliberRM

Together for Delphi

    Live source Audits Metrics Documentation     Live templates Unit testing Model audits Deployment manager

Modeling for success with Delphi 2006

Delphi 2006 – Together for Delphi and C#

Together for Delphi and C#

New LiveSource Class diagramming

two-way modeling – changes in code reflected in the model and viceversa

New UML Diagram suite

Class, Use Case, Sequence, Collaboration, State Chars, Deployment, Activity, and Component Diagrams

Design Patterns

Get started quickly with industry recognized GOF (Gang of Four) design patterns or add your own.

Refactorings Audits and Metrics

Gain insight into your source code

Document Generation

Automatically generate professional quality documentation from your source code and models

Together – Diagramming Types

 Class Diagram  Collaboration Diagram  Use Case Diagram  Activity Diagram  Component Diagram  Deployment Diagram  Statechart Diagram  Sequence Diagram

Together – Design Patterns

 Powerful Reuse Capabilities  Defined in Pattern Registry  Managed via Pattern Organizer  Supports C#, Delphi, Design Projects  Create/Edit Patterns  XML File Defines Model and Link Information

Together – Audit and Metrics

 Audits    Source code conformity rules Violations displayed From Design Issues to Naming Conventions  Descriptions & How to Fix  Metrics  Evaluate Object Complexity   Quantify your code Highlight Redesign Needs  Change Impact Analysis

Together – Documentation Generation

 UML Documentation Wizard  HTML Generation Documentation  The HTML documentation has three frames:  Diagram frame   Project and Overview frame Documentation frame

Together - Refactorings

    Safe Delete Changing Parameter Creating InlineVariables Extracting    Interface Method Superclass  Introducing   Fields Variables    Moving Members Pull Members Up Push Members Down

Together for Delphi Demonstration

Agenda

    Borland Developer Studio StarTeam CaliberRM Together for Delphi     Live source Audits Metrics Documentation    

Live templates

Unit testing Model audits Deployment manager

Live templates

 Support for C++, Delphi, C#  Scriptable templates  Integrated into Code Insight  Take advantage of SyncEdit  Enum support  Can perform refactorings  Context aware  Easy to modify or create

Live Templates Demonstration

Agenda

    Borland Developer Studio StarTeam CaliberRM Together for Delphi     Live source Audits Metrics Documentation     Live templates

Unit testing

Model audits Deployment manager

Unit Testing

 NUnit (.NET) support  DUnit (Delphi/Win32) support  New test case (Delphi & C#)  New test project (Delphi & C#)

Unit Testing demonstration

Agenda

    Borland Developer Studio StarTeam CaliberRM Together for Delphi     Live source Audits Metrics Documentation     Live templates Unit testing

Model audits

Deployment manager

Model audits

 OCL-based model analysis  Inspired by Together 2006 model audits  Used for ECO models  Sample application

Model Audits Demonstration

Agenda

    Borland Developer Studio StarTeam CaliberRM Together for Delphi     Live source Audits Metrics Documentation     Live templates Unit testing Model audits

Deployment manager

Deployment manager

 XCopy deployment  FTP deployment  Pluggable architecture  Comparison engine  Support for assembly groups  Better performance

Deployment Manager Demonstration

Other "ALM" tools

 QualityCentral for feature requests and bug reports (http://qc.borland.com)  AutomatedQA's products (http://www.automatedqa.com/products/)

Thank you! Fill out your evaluation form.

[email protected]