.Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.
-
Upload
roger-barnard-anthony -
Category
Documents
-
view
218 -
download
3
Transcript of .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.
![Page 1: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/1.jpg)
.Net @ KBCDevelopment on the Edge
Peter BauwensTechnical Lead Service Organisation .Net
![Page 2: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/2.jpg)
Speaker’s Bio – Past & Present
Technologies COBOL C/C++ Delphi Java Visual Basic .Net (c#)
Roles @ KBC Programmer Technical Designer Project/Team Lead Subject Matter Expert
SDLC ALM
Domains Electronic Banking Insurance Backoffice Applications Quick Launch Apps Offshoring Consultancy
@KBC since 1990
![Page 3: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/3.jpg)
Introduction The KBC .Net Software Factory The Nirvana Development Platform Q&A
![Page 4: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/4.jpg)
Software Factories @ KBC
Hila• Core• Integrated• Stability over
flexibility• Mainframe (4GL)
& Unix (Java) & ....
Lola• Non-Core• Standalone• Flexibility over
stability• Wintel (.Net)
Nola• End user
computing• Office (MsAccess)
![Page 5: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/5.jpg)
THE KBC.NET SOFTWARE FACTORY
![Page 6: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/6.jpg)
Software Factory?
.Net Software Factory
People & Organisation
Process & Policy Driven
Projects
Governance
Nirvana Development
Platform
![Page 7: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/7.jpg)
People and Organisation
.NET Resource Pool
@ VST
.NETDelivery Center
@ CSOB
.NET Delivery Center
@ Warta
.NET Delivery Center
@ K&H
.NET Delivery Center
@ KBC
.NetService Center
@ KBC
LOCAL .NET DELIVERY CENTER=
BUSINESS INTERFACE
![Page 8: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/8.jpg)
8
Service versus Delivery Center
Service Center @ KBC Patterns & Practices Team Manages the assets (services, people, frameworks, infrastructure, …) needed
to set up and support a Delivery Center There is only one Service Center but is has representatives in each Delivery
Center Delivery Center @ …
A part of the Organisation leveraging Service Center assets to build software There can be one Delivery Center per entity in a country It is typically split up in Project and Maintenance teams
Resource Pool @ VST Delivers man power to Service and Delivery Centers
![Page 9: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/9.jpg)
9
Responsibilities of the Service Center
Be the Center of Expertise for .NET software stack Managing the Nirvana Framework & Guidance Defining the methodology Setting and Starting up Delivery Centers Hosting & Monitoring the Development Environment (TFS) Supporting Delivery Centers Providing Consultancy Running the Helpdesk Organizing Community working
![Page 10: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/10.jpg)
10
The Teams
5 People in Service Center @ KBC (Belgium) 40 People in Delivery Center KBC (Belgium)
Projects - 30 Maintenance - 10
10 people in Delivery Center CSOB (Czech Republic) 5 people in Delivery Center K&H (Hungary) 5 people in Warta (Poland) 28 People in our Resource pool in Chennai (India)
![Page 11: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/11.jpg)
11
The .Net Software Factory in practice
• Enables• The Industrialization of Software Development• The Assembly of Applications using Proven Patterns,
Models, Frameworks and Tools• Offers/Supports
• A Development Process • A Toolset• An Application Architecture• A Framework• Guidance
• Outlines• The Organisational Aspects
![Page 12: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/12.jpg)
12
• Non-Core Applications Characteristics • No risk off big financial losses (>12.500.000€)• No risk to jeopardize KBC reputation: No negative press
during several days• No direct legal prosecution at any level• No risk on violation of privacy of customer information• No risk of jeopardizing competitive advantage
• No direct participation in operational chains• Typical SLA’s
• Availability : downtime between 4 hours and 7 days (DRP)• Data Integrity: day-1
• Target internal users
Process & Policy Driven
![Page 13: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/13.jpg)
Scrum
• Work Organisation framework, i.e. Who, When, What
• Not necessarily development related
XP
• How to do stuff• Development
related practices
![Page 14: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/14.jpg)
Scrum
• Sprint• Sprint planning• End of sprint review• Daily scrum• Product owner• Scrum master• Product backlog• Sprint backlog
XP
• Simple design• Testing• Test and Code• Refactor• Pair programming• Collective ownership• Continuous
Integration• Coding Standards
![Page 15: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/15.jpg)
Scrum in a nutshell
![Page 16: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/16.jpg)
Scrum @ KBC
> Sprintplanning
meeting
> Product increment
> Sprint review
> Sprint retrospective
> Update product backlog
> Daily scrum> Daily work
Daily cycle
Build Phase4 Week Sprints
Sprint Cycle
Deploy Phase
Stabilization Phase
Propose & Scope Phase
Envisioning Phase
![Page 17: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/17.jpg)
Practices – Planning Poker
![Page 18: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/18.jpg)
XP Practices - TDD
Red
GreenRefactor
• Write tests first• Stub code makes tests fail
• Write code• Tests should succeed
• Restructure code if needed
![Page 19: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/19.jpg)
XP Practices - CI
191919
KBC
CSOBVST
Build server•Get CI Projects & Check for changes• Rebuild & Run Tests if necessary
Build server•Get CI Projects & Check for changes• Rebuild & Run Tests if necessary
Workstations •Modify Code• Check In Changes
Workstations •Modify Code• Check In Changes
Build ticker on workstations •Check Build Status & Notify User
Build ticker on workstations •Check Build Status & Notify User
![Page 20: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/20.jpg)
Practices - Refactoring
Refactoring is a disciplined technique for restructuring an existing body of code, altering its internal structure without changing its external behavior.
Each transformation (called a 'refactoring') does little, but a sequence of transformations can produce a significant restructuring. Since each refactoring is small, it's less likely to go wrong.
The system is kept fully working after each small refactoring, reducing the chances that a system can get seriously broken during the restructuring.
![Page 21: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/21.jpg)
THE NIRVANA DEVELOPMENT PLATFORM
![Page 22: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/22.jpg)
The Nirvana Development Platform
DevelopmentFramework
GuidanceAutomation
Technological Platform
Common Application Architecture
Upp
er L
ayer
Fou
ndat
ions
![Page 23: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/23.jpg)
2323
Technological Platform Microsoft .Net
Operating System
Common Language Runtime
Base Class Library
ADO .NET and XML
ASP .NET Web Forms / Web Services / MVC Windows Forms WPF Silverlight
Common Language Specification
VB C++ C# J# ...
![Page 24: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/24.jpg)
2424
Technological Platform Application Lifecycle Management
![Page 25: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/25.jpg)
2525
The architecture encourages applications to use a layered N-tier design, containing the three classic presentation,
business and data layers. Most layers are in turn subdivided in sub layers, such as the model-view-controller sub layers in the presentation tier. Next to that the CAA has a provider based model which provides pluggable services
to the horizontal layers.
Common Application Architecture
![Page 26: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/26.jpg)
2626
The Nirvana Framework
The Nirvana Framework is a set of class libraries, tools, templates and code generators, written in C#, and destined to Increase the consistency of design and look-and-feel across multiple
KBC .NET applications, i.e. Support & enforce the baseline architecture Centralize and reuse common non-business functionality required by
most (KBC) .NET applications Reduce the number of lines of code to write, providing developers
with more time to focus on actual business functionality Speed up the time-to-first solution and subsequent development by
code generation Integrate with the KBC intranet web portal in order to make
applications accessible within the KBC group at international sites.
![Page 27: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/27.jpg)
Nirvana Framework
Step
Action
Query
List
New
Edit
Find
Query
New
Enter Scenario
OK
Cancel
Edit
OKCancelSave
Cancel
LeaveScenario
Delete
Model-view-controller pattern Process workflow
Sessions, Scenarios, Steps and Actions Scenario map : state machine for process workflow
![Page 28: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/28.jpg)
Nirvana Framework
Use case (scenario) navigation controlled by a state-machine Event driven error handling & presentation State management Transactional business operations Authentication integrated with KBC intranet portal Authorization integrated with KBC “ID2” user profile database UI and data globalization Code management Tracing & logging Static online help Exporting to Word / Excel
![Page 29: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/29.jpg)
Guidance Automation
Visual Studio 2008 Team Suite
Development Environment Team Explorer
Guidance Automation Extensions
Visual Studio Extensibility
Nirvana Framework Guidance
Solution Templates Project Templates Code Generation Static Code Analysis
![Page 30: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/30.jpg)
Recap
![Page 31: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/31.jpg)
Q&A
![Page 32: .Net @ KBC Development on the Edge Peter Bauwens Technical Lead Service Organisation.Net.](https://reader035.fdocuments.in/reader035/viewer/2022062421/56649ce35503460f949af4a4/html5/thumbnails/32.jpg)