Software ReCreation - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

Software ReCreation

Description:

'Dit programma is grotendeels een kopie van het XY progamma ABCD123.' Subsystems ... When is a year a leap year ? Two (small) 100.000 LOC systems contained 8 ... – PowerPoint PPT presentation

Number of Views:25
Avg rating:3.0/5.0
Slides: 15
Provided by: arievan
Category:

less

Transcript and Presenter's Notes

Title: Software ReCreation


1
Software Re-Creation
  • From Legacy to Component
  • Arie van Deursen

2
Software Duplication
  • Programs
  • Dit programma is grotendeels een kopie van het
    XY progamma ABCD123.
  • Subsystems
  • CICS and BATCH functionality
  • Functions Computations
  • Entire systems

3
Function Duplication Example
  • When is a year a leap year ?
  • Two (small) 100.000 LOC systems contained 8
    different computations!

IF YY 92 OR 96 MOVE 29 TO MD(2) END-IF
4
Component Software
  • Technology
  • Abstraction
  • Selection
  • Specialization
  • Integration
  • Process
  • Create reusable assets
  • Support
  • Reuse
  • Manage

AND ONLY ONCE!
Kent Beck Say it once!
5
Financial Products
  • Loan, swap, future, FRA,
  • Introduce innovative products
  • Banks backoffice hard to adapt
  • Describe products at high level
  • Generate (COBOL) code
  • At MeesPierson, with CAP Gemini

6
Domain-Specific Languages
Product Specification
7
Domain Engineering
  • Identify potential reusable assets
  • Domain family of systems
  • 3 legacy 3 future
  • Economy of scope
  • Organizational learning

Domain Engineering
8
Organizational Domain Modeling (ODM)
  • Plan Domain
  • stakeholders
  • domain boundary decisions
  • examples
  • counter-examples
  • Model Domain
  • domain experts
  • reverse engineer legacy systems
  • lexicon of terms
  • commonality
  • variability
  • Engineer
  • Asset Base
  • scope
  • architect
  • implement

9
Reverse Engineering Tools
Legacy Sources
10
Large classes
Small classes
11
Summary
  • Components
  • Abstraction
  • Selection
  • Specialization
  • Integration
  • Domain Engineering
  • Comonality
  • Variability
  • Economy of Scope
  • Family of systems
  • Domain-Specific Languages
  • Program Understanding Tools

12
In Conclusion
CBD essential for producing quality software
  • Recommended Reading
  • Meyer Object-Oriented Software Construction
  • Brooks The Mythical Man Month
  • Jacobson, et. al. Software Reuse
  • Quote from Alan Kay
  • To be a good software engineer,
  • you need the ability to feel pain

13
  • Questions?

14
Component-Based Development Keywords
  • Object-Oriented Application Framework
  • Hot Spots
  • Design Pattern
  • Java
  • Object Request Brokers, CORBA, DCOM
  • Software Architecture
  • Unified Modeling Language
  • N-Tier Systems
Write a Comment
User Comments (0)
About PowerShow.com