net and rational™s xde from the trenches tony...

30
.Net and Rationals XDE from the trenches Tony Grout FMI Solutions .Net and Rationals XDE from the trenches Tony Grout FMI Solutions

Upload: lyliem

Post on 01-Oct-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

.Net and Rational�s XDE from the trenchesTony Grout

FMI Solutions

.Net and Rational�s XDE from the trenchesTony Grout

FMI Solutions

Page 2: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

2

Agenda

! Who are FMI Solutions?! Setting the Scene! Getting the Project Going! In Use on a Project! During Project Deployment! Lessons Learned! Summary

Page 3: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

3

Who Are FMI Solutions?

! Software developers since 1983! Write software for organisations in most

industry sectors using the RUP and Rational�s tools

! Consultants and trainers are seconded from real projects

! Rational University�s London Training Centre

! Have introduced Rational to a number of accounts

Page 4: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

4

What does FMI Solutions do?

! Technologies" .NET" J2EE"Delphi"Visual Basic

! Processes"Rational Unified Process(RUP)" eXtreme Programming(XP) + RUP"DSDM + RUP"PRINCE2 + RUP

Page 5: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

5

Setting the Scene � The Project

! Project time recording! Specifically designed for software developers! Stopwatch based! Integrated to Rational�s ClearQuest tool for defect

and enhancement time recording! Three click time recording from anywhere! Unobtrusive reminders for accurate recording

Page 6: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

6

Setting the Scene � The Technology

! .Net! Access database on

the client! SQL Server on the

server! COM+ middleware! Web Services for

remote submission

Page 7: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

7

Setting the Scene � The Tools

! IDE: Visual Studio .Net! Design: Rational XDE Professional for .Net! Requirements: Rational RequisitePro! Change Tracking: Rational ClearQuest! Config Management: Rational ClearCase! Testing: Rational Test Studio! Unit Testing: HarnessIT! Metrics: Rational Project Console / Excel! Project Management: MS Project! Project Planning: NOBO Whiteboard!

Page 8: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

8

What is Rational�s XDE for .Net

! eXtended Development Environment! Allows UML designs to become code and

vice versa (roundtrip engineering)! Shares IDE with development tools such as

Visual Studio .Net and IBM Websphere! User definable patterns! Free form diagramming! Database modelling and synchronisation! Web publishable reporting

Page 9: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

9

XDE � An eXtended Development Environment

Single user experienceAdds value at all levels of development experience

Single user experienceAdds value at all levels of development experience

CompileCompile

DebugDebug

DesignDesignArchitectArchitect

GenerateGenerate

EditEdit

Blends design and development to extend IDE functions

Blends design and development to extend IDE functions

Etc�Etc�

Etc�Etc�

Microsoft�Microsoft�

RationalRational ModelingModeling

IDEIDE

Page 10: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

10

XDE � One IDE for design and code

Code-centric ordesign-centric development�the choice is yours!

Code-centric ordesign-centric development�the choice is yours!

Page 11: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

11

XDE � Code and design become one

Frictionless design and developmentFrictionless design and development

Code Synchronization

Preferences

Code Code Synchronization Synchronization

PreferencesPreferences

Code Code �� Model Model SynchronizationSynchronization

Page 12: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

12

XDE � Never start with a blank slate

Utilise the power of your patterns Utilise the power of your patterns

Page 13: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

13

Setting the Scene � The Process

! Rational Unified Process as basis"Reduced to its absolute essence based on our

experience! Extreme Programming

"Adopted a number of the practices to supplement RUP

+

Page 14: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

14

Setting the Scene � The Team

! Mixture of Java, VB6 and Borland Delphi Developers

! No commercial C# experience (read a couple of books)

! Mixture of object oriented development skills

! Strong architectural experience

Page 15: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

15

Getting Going � VS .Net IDE

! Developers generally loved the IDE! They could use the same IDE for writing

code, XML and HTML! The .Net development environment is big!! It corrupted a couple of the machines to the

point of having to reformat them! The IDE was slower relative to VB6 or

Delphi but was quicker than JBuilder (no surprise!)

! IDE was still very usable speed wise

Page 16: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

16

Getting Going � Rational XDE

! Slows the Visual Studio .Net IDE especially if set to auto-synchronise

! Brilliantly integrated � difficult to tell where studio ended and it started

! The user interface was very intuitive

User

Page 17: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

17

In Use - .Net Language

! C# being new takes the best bits of VB, Delphi and Java

! Encapsulated complexity in comparison to the J2EE environment

! Single vendor Common Language Runtime reduces configuration issues

! Fully object oriented � everything is an object

! Easy creation of Web Services

Page 18: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

18

In Use - .Net Framework

! Intuitive � very similar to Delphi Visual Component Library API wrapper

! The Windows API is not fully exposed! We needed API calls to for complex GUI�s! Version 1.0 has teething issue

"Multi-threading was a killer

Page 19: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

19

In Use � Rational XDE

! Frictionless roundtrip synchronisation! Made designing more immediately visible

as being worthwhile! Able to express the design in the most

suitable form"UML" Free format"Code (yes code)

! Web design further simplified"Web services, WebForms and ASP.Net

Page 20: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

20

In Use � Rational XDE

! Loved the pattern wizards" Improved consistency of approach"Reduced hand coding which reduced defects

! Useful having UML stereotypes for .Net"Understanding of designs improved"Ability to review designs speeded up

! Great for learning class modeling UML

Page 21: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

21

In Use � Rational XDE

! Data modeling was useful to have in the same IDE

! The free form diagrams where useful for early architectural discussions

! Integration with other Rational Tools such as Requisite Pro were invaluable"Stopped another project FRASCITI " Forget Requirements And Start Coding IT

Immediately

Page 22: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

22

In Use � Rational XDE

! Temptation to not do design" The IT industry educates programmers not

designers"Designers in the OO world have to have built

code"Disciplined team members used to design didn�t

fall into this trap" Those that did quickly realised it was quicker to

model the structure and then implement the behaviour

Page 23: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

23

In Use � Rational XDE

! Not easy to detect who is designing then coding appropriately"A team not a tool issue

! Lack of behavioral synchronisation"No support for state modeling roundtrip"No support for sequence diagram roundtrip

Page 24: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

24

During Deployment - .Net

! 20Mb footprint to run a .Net application! Large memory footprint

" This does self-tune but takes a while to drop! Not included in Windows service packs

"Even under XP at present! Few applications using it at present

"Benefit of sharing resources not there yet! Once installed it integrates well with the

operating system

Page 25: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

25

Lessons Learned - Technology

! Would continue to develop using .Net and would choose C#

! Web Services had the Ronseal factor! Considering it�s a Version 1 product we are

impressed! We have yet to prove the scalability issues

since we only have small hits with possible large volumes

Page 26: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

26

Lessons Learned � The Tools

! Visual Studio .Net proved to be a slick, powerful and easy to use IDE.

! The development team were all in favour of continuing to use VS .Net irrespective of technology background

! XDE from Rational had a luke warm reception initially but the team refused to give the licenses back at the end!

! A key benefit was tools integrations! HarnessIT for automated unit testing proved

invaluable

Page 27: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

27

Lessons Learned � The Process

! The process must fit the project and not the other way around

! Our experience paid off when choosing not to abandon the rigour and structure of the Rational Unified Process

! Trimming it to the minimum worked for this small project (approx 10 people)

! Adding Extreme Programming practices such as write unit tests first, pair programming, refactoringand the use of automated unit testing added incredible value.

! All of our projects will take some or all of these on board

Page 28: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

28

Lessons Learned � The Team

! Use an accelerated learning programme! First use short focused on training in this

order"Process skills (example RUP/XP)"Basic OO concepts" Technology and IDE�s (VS .Net & XDE)

! Follow with pair programming where possible

! Provide independent mentoring if most are low experience with OO

Page 29: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

29

Summary

! We will continue to use VS .Net with C#! Unlikely to bother with VB.Net! The team needs to be skilled in OO! Rationals XDE is now a standard part of our

toolkit on .Net projects! Deployment with .Net is still an issue at

present due to size and operating system separation

! Rational Unified Process with XP well proven and will use again

Page 30: Net and Rational™s XDE from the trenches Tony …nottmderby.bcs.org/downloads/DotNetWithXDE.pdf · Tony Grout FMI Solutions.Net and Rational™s XDE from the trenches Tony Grout

30

The End � Thank You

! For more information see"www.fmisolutions.com"www.rational.com/xde"www.microsoft.com/net