• No results found

De-Risking large Software development projects

N/A
N/A
Protected

Academic year: 2021

Share "De-Risking large Software development projects"

Copied!
45
0
0

Loading.... (view fulltext now)

Full text

(1)

De-Risking large Software

development projects

Mark Carroll – Architect, Developer and Platform Strategy – Microsoft NZ Peter Fuller – Account Manager, Datacom NZ

(2)

This is a stickup !

• Put up your hand if

– Your organisation builds

code for itself;

– Your organisation builds

code for customers

– Your organisation responds

to RFP‟s or RFI‟s that have

any requirement to build

(3)

Todays Agenda

• We hear from two partners about how they de-risk their

software development;

– Datacom – large partner active in many different

markets and technologies;

– Equinox – specialists in architecture and development

with years of experience on a number of platforms

• Both partners use the same generic models to de-risk

software development – we talk about those generic

models and how they are both are supported by Visual

Studio Team System;

(4)

Software Project metrics

• Why Should I care ?

– Loss of Income

– Loss of reputation

– Loss of Organisation

• Why do we care ?

– Loss of Income

– Loss of reputation

– Loss of Partner

• 31 % Projects are

canceled

• 52 % of Projects are over

budget. (189% of original

estimates)

• Only 16% of the projects

are completed on time

and on budget

(5)
(6)

De-Risking Projects

• Three Projects – all different, all critical

– E-Census

– VectorNet

– Office of Film and Literature (OLFC)

• All projects had risk, but the approach to risk was very different

• The one consistent theme is the use of Microsoft technology to

(7)
(8)

E-Census

Key risks

– Available and skilled people

– Stable supported technology stack – Performance

– Price

People – the biggest risk

– Integration project of a tuned application to a tuned platform over 2 years – Many people, many months, many disciplines - we could not afford the “guru

effect”

– So it had to be a seriously popular technology supported broadly within both Datacom and the market

Technology Stack

– Wanted an integrated stack which the vendor validated and supported – Wanted support

(9)

E-Census

Performance

– Very high targets

– Followed a “scientific” process: Modelled, prototyped, built, tested, broke, fixed, tested, broke, fixed, … you get the picture

– Testing was a third of the application budget – Used Microsoft Test Centre

Price

– Any risk can be solved if you spend enough

– We (and Stats) wanted to spend sufficient and no more

– Microsoft price point supported the kind of iterative process described above

In Summary, Microsoft technology

• Had skills at every level of the stack – developer, sysadmin, dba, operations • Had a stable stack

• The technology supported the process • The price supported the process

(10)

VectorNet

Purpose

• Plan and manage the design and implementation of thousands of field activities targeting wildlife that carry bovine Tb (mainly brush-tailed possums). These Tb vectors infect cattle and deer herds.

• Extremely important to reduce levels of bovine Tb in New Zealand for agricultural prosperity

Nature

• Browser-based system used across New Zealand

• Uses .Net 3.0 (Windows Communication Foundation, Windows Workflow Foundation) • Integration with ESRI GIS software

• Quite complex with significant workflow

• Delivered in an iterative manner, first deployment to production May 2007, 14 day release cycle

(11)

VectorNet Risks

Key Risks

• Reliability of the code under pressure • The right people and environment

Reliability

• The code would fracture under the combined weight of the release cycle and the complexity of the integration

• The story is that there was no story – WCM, WCF, the rest of the framework was boringly reliable.

People

• Again, people with excellent skills were available within Datacom

(12)

Office of Film and Literature

(OLFC)

Background

• Office of Film and Literature (OLFC) classifies material

• It needed a new application with robust workflow and reporting processes • Flexible, reliable application

The Solution

• A browser-based application on Microsoft .Net 3.0 on SQL 2005 • Workflow provided by K2.Net.

• Uses Windows Workflow Foundation and Windows Communication Foundation • Uses Team Services as the development platform

Risks

• Code quality • Reliability

(13)

OLFC Risks –Team System

Code quality

• Does everything you would expect from a code repository …. directly from Visual Studio

• Overnight code builds have become much easier • Allows testing to be undertaken earlier in the project

• Defects caught earlier – better code quality and lower cost

Reliability Risk

• Has an automated test capability

• … but much better … it enforces unit testing as part of check in! • … even better it highlights the code that has not been unit tested

• We really like this, it means that the team lead can confirm reports of progress directly from the source code repository

Project management

• Starting to use the project reporting function in conjunction with the unit testing to determine progress

(14)

OLFC Team System Benefits

• Easy to use

• Defects are caught earlier - higher quality

• Iterative development is supported with interim deliverables / value

• Change can be handled better

• Project Reporting is superior

• Want to implement the Microsoft Solution Framework template in the

project management section

(15)
(16)

Equinox – a bit of background

• Privately-owned New Zealand company

• Established in April 1995

• Specialise in the software development lifecycle

• Client and services-led

(17)

Our priorities

Process can be the “glue” that holds

everything together

People

Process

Tools

Tools can enhance productivity and

efficiency People

(18)

People – the “tool-box”

“What’s in your bag of tricks?”

Skills:

The tools you have in your

toolbox (“know what”)

Knowledge:

What tool to use and when

(“know when”)

Experience:

How to apply the tool

(“know how”)

(19)

Process – three key approaches

• Agile

– Visible

– Responsive

– Adaptive

• Iterative

• Incremental

“The Learning Spiral”

http://www.nald.ca/fulltext/abc/undcur/p50.htm

(20)

Process – tailored to fit

• Needs to be tailored to the culture and characteristics of

your organisation – “one size fits one”

• Can either be an accelerator or a brake depending on how

it is applied

High Complexity Low Complexity Low Flexibility High Flexibility Formal Processes Agile Processes

(21)

Process – points to note

• People will not follow processes and procedures beyond

the point where they believe they will not result in any

benefits

• Only go as far as it makes sense in your organisation:

– Principles

– Best practices

– Policies

– Standards

• Finding the right level of detail is an exercise in discovery

– not a science

(22)

Tools – integrated development

environment

(23)

Tools – integrated development

environment

• Development language

• Version control

• Build management

• Test management

• Defect management

• Project management

• Tracking and reporting

IDE

Content

Context

(24)

QEII National Trust

• Covenant Database

Development

• Managing covenants to

protect natural features on

private land

• First development using

Microsoft VSTS Team

Foundation Server

• Six month project

• Team of five people

www.openspace.org.nz

(25)

NZAID

• Scholarship System

Development

• Managing scholarships to

undertake post-secondary

study or vocational training

• Five month project

• Team of seven people

www.nzaid.govt.nz

(26)

Schering-Plough Animal Health

• VetPlan System

Redevelopment

• Original developed by Equinox

in 1997 to manage customer

loyalty rebate system

• Redeveloped in 2007 using

latest Microsoft technologies

• Six month project

• Team of seven people

http://www.spah.co.nz

(27)

Engagement

Awareness

Involvement

(28)

Some final observations

• Manage the lifecycle

• Invest in training and development – “the grass is always

greenest where it is watered”

• Don‟t reinvent the wheel – reuse and improve

• Collect relevant data unobtrusively with no

developer-perceived interference

• Always do a post implementation review and apply the

lessons learned to your next project – “deliberate

learning”

• Finally, remember it is all about the business and

delivering business value

(29)

Typical structure to De-Risk

Software development

Development Process

Job allocation and

tracking Process

Project Management

Stakeholder & Sponsor

MS-Project / Excel / TE

Reports / Reviews

• Process designer Process customisation • Team Portal Process Guidance

Role based IDEs (Arch, Dev,Test,

(30)

Process Templates & Designer

Templates based on SCRUM or other process methodologies and even customised process templates can be created for selection.

(31)

Example: Linking MS-Project with

Work-items

(32)
(33)
(34)
(35)
(36)

V–Model

as it

relates

to IDE‟s

Component

Design

Component

Development

Unit Testing

Integration

Testing

System

Testing

Acceptance

Testing

Release

Testing

System

Design

System

Specification

Requirements

Business

Case

Team edition for Testers Team edition for Developers

Team

Explorer

Team edition for architects Team edition for DB-Pros

(37)

Work-Items

• Stateful with their own workflow by type; • Can be defined; • Accessible to roles determined by security policy; • Typical types – Task, Risk, Bug etc

• SQL Server • SQL Queries available for all roles • SQL Reporting services • Can be embedded in Portal using WSS

(38)

How Far Can We Get In The Available

Time?

(39)

Where do we need to shift

resources ?

(40)
(41)

Pro ject Lea d / Sup erv is or -T eam Ex plorer Projec t M anager M S Projec t or M S Ex c el

(42)

Voice of the Customer

Kiwibankcurrently have development projects which are using both Windows Communication Foundation (WCF) and

Windows Workflow Foundation (WF). We are moving to Visual Studio Team System to allow our developers to work in a team environment with these new technologies. Our developers believe VSTS to be a „natural fit‟ when developing with the rich set of features provided by .NET 3.0 and its component pieces including WCF and WF.

Bohdan Szymanik– Chief Architect - KiwiBank

At Provokewe take our customer obligations very seriously especially those around ensuring that the solutions we

develop for our customers can be maintained and enhanced in the future. Over the last two years we have developed an extensive software development practice around the use of Visual Studio Team system as it is a fully ledged

application life cycle management tool incorporating tools, people and process. We have been excited about the addition of the Visual Studio Team edition for Database professionals as it allows us to apply to same rigours of quality control to our work in the Database component of the solutions we build for our customers.

Clive Trott– Development Manager – Provoke Solutions

Rakonhas a reputation for supplying reliable products and is a global leader in the quality testing of frequency control

products. The Rakon proprietary test equipment is highly regarded throughout the crystal industry. With this emphasis on quality it is easy to understand why Rakon have utilised processes and technologies that assist us to develop and maintain supporting software infrastructures to a high standard of quality. Previously we used the Rational Unified Process and the supporting Rational technologies to help us meet these software quality objectives but we changed to Visual Studio Team system last year. The key reasons for changing from Rational were because we felt that Visual Studio Team system provided superior integration, offered a much better user experience and was better suited to our method of operation. We also found Visual Studio Team system to be more cost effective in all critical areas.

(43)

Summary

• We heard from two partners on de-risking software

development – both employed Team system as a key

part of their strategy and offerings;

• We mapped a generic de-risking development model to

Team system;

• If you are not using Team system ask yourself if your

current approach is attaining the levels of quality and

efficiency you require from your Software development;

(44)

What does success look like?

• Business model – Have proper processes

in place –this is easier with the right

supporting technologies;

• People – For VS Team system we are

ensuring the right people are out there via

training programmes and all the usual

MSDN resources;

• Customer engagements – requirement to

use this type of approach

–failed software

projects are ugly;

(45)

Next Steps

• Training & readiness

– For your Developers, Testers and Architects - Ace,

Auldhouse and Equinox all have training offerings;

– For Project managers - Equinox

– For all roles there are also specific .NET Café talks;

• Competency attainment – depends on role;

• Who do I speak to? – Mark Carroll

(

[email protected]

) or Dean Edwards

(

[email protected]

)

References

Related documents

In Design Patterns, Facade or Façade Design Pattern is a software design pattern under the Structural Patterns category and it is mainly designed to hide the

Given the location of the bidding generators, their supply curves, the transmission constraint set by the TSO and the forecast demand in each zone, the MO solves the problem of

By this we mean that the wages of university staff that serve as a base of economic impact studies cannot be simply connected to first, second and third mission

The contract must specify that by using Noodle domain name registration services, the customer becomes subject to the terms of a legal agreement between the customer and

The algorithm is based on exploring the local neighborhood around the source node s, and computing an approximation of the distribution p s,t truncated to the smaller distances.

If a member or member’s representative is not satisfied upon the exhaustion of the internal expedited complaint review process, the Member, or the Member’s representative, with

1 Legal and Tax Advice rendered by associated partner