.NET of .NOT in de praktijk voorbij het onderbuikgevoel
Robert Jan Elias & Maarten Gribnau
[email protected] &
[email protected] http://www.mavim.com Platform Product Software 11-11-2003
1/15
Inhoud • • • • • • •
Mavim het bedrijf Mavim het ontwikkelteam Mavim SIS het product Waarom de keuze? De keuze (criteria platform/taal) Invoeringstraject Conclusie Platform Product Software 11-11-2003
2/15
1
Mavim het bedrijf • Methodische Aanpak Voor Informatie Management • Vastleggen en communiceren van bedrijfsprocessen • Motto: Structuur brengt vrijheid. • 36 man • Van consultancy naar software • Meer dan 400 klanten
–Adviseurs –Overheid –Zakelijke dienstverlening –Financiële instellingen –Handel en industrie –Transport –Onderwijs –Waterschappen –Woningcoöperaties –Zorg
Platform Product Software 11-11-2003
3/15
Mavim het bedrijf • Meer dan software alleen • Cursussen – Verschillende niveaus
• Consultancy – Implementatie software en methode
• Partners – Resellers – Consulting partners (Mavim certified) Platform Product Software 11-11-2003
4/15
2
Het Mavim ontwikkelteam • 10 man, 1 vrouw • 50% VB, 50% C++ • Mix van achtergronden – Platforms: UNIX/Linux, Windows, Mac – Applicatiedomeinen: maatwerk, 3D applicaties, etc.
• • • •
1 Roemeen Ervaren team: gemiddeld 8 jaar ervaring 2 project managers Eigen methodiek – Geen Yourdon, RUP, UML, SDM Platform Product Software 11-11-2003
5/15
Mavim SIS, het product • 1993 eerste versie • Van specifiek naar generiek • Ontwikkelomgeving – Beschrijven, vastleggen – Distribueren, versiebeheer – Publiceren
• Web omgeving – Raadplegen – Becommentariëren Platform Product Software 11-11-2003
6/15
3
Mavim SIS ontwikkelomgeving
Platform Product Software 11-11-2003
7/15
MAVIM Web omgeving
Platform Product Software 11-11-2003
8/15
4
Mavim SIS intern • Databases (Access, Oracle, SQL Server) • VB, C++, PHP • COMmunicatie Mavim SIS
Web server
Web thema
HTML Browsen, zoeken HTML
Mavim DB
Mavimweb.php
INFO zoeken versie
Commentaar ophalen
Commentaar leveren HTML
Platform Product Software 11-11-2003
9/15
De Mavim software ontwikkelstraat
Platform Product Software 11-11-2003
10/15
5
Waarom de keuze • Nieuwe functionaliteit vraagt om nieuwe opzet – Meerdere simultane gebruikers – Dynamische publicatie
• • • • • • •
VB beperkingen Stabiliteit en performance, schaalbaarheid DLL Hell Installatieperikelen Toekomstige ondersteuning M$ voor VB en C++ 1 programmeertaal voor het hele team Ontwikkelaars willen ontwikkeling Platform Product Software 11-11-2003
11/15
De keuze, platform • Tweevoudige keuze: platform en taal • Literatuur: – Dan Appleman, VB guru (met C++ ervaring) – Web sites • http://www.maartengribnau.com/cea/DotNetOrJ2EE.html
– Rapporten • http://www.maartengribnau.com/cea/J2EE-vs-DotNET.pdf
• Conferenties • Experimenten
Platform Product Software 11-11-2003
12/15
6
De keuze, evaluatie Platform Platform Beschikbaarheid Ontwikkels Gefaseerde Acceptatie Toekomst onafhankelijkh tools & Volwassen nelheid migratie klant beeld Inwerktijd Performance eid middleware heid Score 5 4 4 3 3 3 2 2 1
Criterium W-Factor Huidige technologie .NET (C#, VB.NET) J2EE (Java) C/C++-crossplatform
4 5 3 2
5 4 1 4
3 3 3 3
1 4 4 2
5 4 1 2
2 4 3 5
1 3 5 5
4 3 4 5
5 3 4 5
91 104 77 90
Taal Criterium W-Factor
XML Ontwikkel Source snelheid Docs 5
VB.NET C# Managed C++
4
4 4 3
1 5 1
Volwassen Toekomst Background Migratie van heid beeld Inwerktijd Compiling VB6 Voorkeur Team 2 4 3 2 1 3 2 4 2
4 5 2
5 5 3
5 3 3
3 1 1
Score
2 4 1
Platform Product Software 11-11-2003
78 102 50
13/15
Invoeringstraject • Fase 1: – Experimenten (prototypes, mono) – Opleiding
• Fase 2: – Eerste productmodule (C#) los van bestaande codebase (COMmunicatie)
• Fase 3: – Server migratie – Web server software – Bestaande client koppelen (minimale inspanning)
• Fase 4: – Client porten
Platform Product Software 11-11-2003
14/15
7
Conclusie •
.NET is gekozen omdat: – Technisch goed genoeg • Performance is goed • Superieure ontwikkelomgeving en support tools • Open standaarden
– Microsoft staat er achter • Acceptatie door klanten • Mavim is Microsoft partner
– Onbekendheid met Java
•
Punten van zorg: – Platform afhankelijkheid • Kunnen we op mono rekenen?
– Patenten • Is het echt een open standaard? • Kan ximian/mono op Microsoft rekenen?
– Geen bewijs voor succesvolle toepassing voor product software – Standaard GUI controls beperkt – Leercurve object georiënteerde denken
Platform Product Software 11-11-2003
15/15
8