.Net and Rational�s XDE from the trenchesTony Grout
FMI Solutions
.Net and Rational�s XDE from the trenchesTony Grout
FMI Solutions
2
Agenda
! Who are FMI Solutions?! Setting the Scene! Getting the Project Going! In Use on a Project! During Project Deployment! Lessons Learned! Summary
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
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
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
6
Setting the Scene � The Technology
! .Net! Access database on
the client! SQL Server on the
server! COM+ middleware! Web Services for
remote submission
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!
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
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
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!
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
12
XDE � Never start with a blank slate
Utilise the power of your patterns Utilise the power of your patterns
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
+
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
30
The End � Thank You
! For more information see"www.fmisolutions.com"www.rational.com/xde"www.microsoft.com/net
Top Related