Software Development Consulting
Software Process Improvement · Design Patterns and Principles · Reuse
Training, Mentoring and Consulting Corporate America for over 16 years











Major Clients

Bank of America


Dun & Bradstreet

EDS Information Systems

General Electric

Geo-Logic Systems

Glaxo / Welcome



Lucent Technologies


Mercedes-Benz Credit Corp.


NASA, Goddard Space Flight Center

Post Software International


SELECT Software Tools

State of Georgia

State of New York

ObjectVenture, Inc.

Project History

Java Design Training and Consulting

2002 -- present

  • Java Design Patterns Tutorials: Developed an on-going series of tutorials that introduce, explain and demonstrate how to successfully apply software design patterns to the development of a catalog application in Java based on Pattern-Component Markup Language. www.objectventure.com/tutorials/
  • Java and J2EE Patterns Training Development: Developed a 5-day corporate training course on object-oriented software development using software design patterns. This course introduces, explains and demonstrates how to successfully apply pattern-based design and development techniques in a rapid iterative development environment. www.objectventure.com/training.html

OO Pattern Digest Catalog and Resources Web Site

2002 -- present

Designed/Developed/Deployed catalog of condensed object-oriented patterns, links, bookstore and more for software developers. www.patterndigest.com
Apache, HTML, CGI, SSI, PHP, MySQL, DHTML/JavaScript.

Java e-Business Design Architect and Software Process Mentor

2000 -- 2001

UML Analysis and Design for Java Web Applications and Frameworks. Developed and Mentored a Reuse-driven Approach for Parallel Iterative Development (RAPID) incorporating enterprise-scale systematic reuse, the Rational Unified Process (RUP), Product Line CONOPS (SEI), Business Process Modeling, an UML-based Architectural Description Standard, extreme Programming (XP) and more. Piloted approach for e-Business Java projects across multiple lines of business. Additional Activities included Component Harvesting, Metrics Analysis, and Options Analysis for Reengineering (SEI OAR).
Rational Unified Process, Rational Rose, UML, Java, J2EE, WebSphere, VisualAge, DB2

Java QA, Security and Mapping Tools Design and Development

1999 -- 2000

Designed and Implemented an Address Interpolation and Encryption strategy for a Geo-coding API. Designed and implemented a new Product Cipher using highly randomized substitution and transposition for moderate security and Implemented AES-candidate TwoFish algorithm for high security encryption. Analyzed software Quality Assurance practices for Java-based Applications and API products. Performed quantitative and qualitative analysis of products. Designed and developed advanced Java-based software testing tools for Distributed Development.
Java, Oracle JDeveloper, Oracle 8Si; EJBs, Java Servlets,, IIOP, JDBC

UML Component-Based Development Training and Consulting

1998 -- 1999

Developed and Delivered courses on Component-Based Development, Object-Oriented Design, Business Process Modeling and UML to a wide diversity of clients on site. Provided on-site consulting services as requested.
UML, SELECT Enterprise, SELECT Perspective, SELECT Component Manager.

Component Harvesting and Reuse Library Development


Analyzed the software development practices and products of five unrelated development groups across the USA. Identified ten components and other highly reusable entities and populated an Internet accessible Reuse Repository. Developed reuse-oriented development procedures. Recommended software tools and enhancements. Project resulted in a corporation-wide reuse strategy and an initial new product line of business components currently marketed on the World Wide Web.
SELECT Component Manager, SELECT Enterprise, Visual Enabler.

Java Translator Architect and Team Lead


Designed and Developed a reusable File Parser and Translation Language for converting CDIF-format data files into other formats to allow the import of data from selected modeling tools into SELECT’s products. The design included a High-Speed Object Caching component to facilitate fast processing of hundreds of megabytes of data.
Java JDK, Visual Café, SELECT Enterprise, MS Windows95.

C++ NASA Telemetry Processing Architect and Team Lead

1996 -- 1998

Hubble Space Telescope Vision200 Command Center System: Technical and Project Leadership, Object-Oriented Training and Mentoring, Designed and Implemented: A Satellite Telemetry Processing Framework Architecture and various Flexible Distributed Real-Time Communications Systems. Created and delivered a Weekly OO Design Workshop.
SGi Unix, HP-UX, C++, RougeWave Tools, Sockets, Veda, IP/UDP.

PowerBuilder Business Applications and Frameworks Architect and Team Lead

1994 -- 1996

Project Leader, Designer and developer: multiple object-oriented application frameworks and client-server applications to search, maintain, report and administer DB2, MS SQL Server, Sybase, Watcom SQL and SQL Anywhere databases. Trained and mentored new staff members. Researched and developed advanced application design techniques and software development processes. Developed and delivered OO Design course for PowerBuilder, presentations on UML, Frameworks, patterns and more.. PowerBuilder, MS Visual C/C++; Windows, Windows95; Sybase, MS SqlServer, Watcom SQL.

Graphical User Interface Analysis and Design for Medical Records Systems


Analyzed user requirements conducted user observation and usability studies for an existing prototype Computerized Patient Record system and re-designed graphical user interface. Also, provided analysis, design evaluation and recommendations for a Pharmacy Order Placement, Tracking and Delivery system.
Visual Basic, Windows 3.1, Oracle Forms.

Windows NT 3270 Communications Application Development


Developed a 3270 communications application for Windows NT. Documented and implemented portable multi platform development strategies and API solutions.
MSC/C++ 7.0, Windows NT, Windows 3.1, MS SNA Services.

Windows NT / 3.1 Multi platform Development and Unicode Internationalization

1991 -- 1993

Developed Windows 16 and 32-bit NT Tape Backup Applications. Developed Transparent Character techniques for Multi-national support using Unicode. Researched portable Graphical User-Interface techniques and 3rd party products.
MSC/C++ 7.0, Windows NT, Windows 3.1, Unicode, zApp, Tape Backup.

OS/2 Relational Database Navigation System Design and Development


Software architecture and development for an experimental Distributed relational database navigational system. Analysis and Design of a simple hypertext help language. Design, development and training of reusable algorithms and specialized GUI objects.
MS-C 6.0, OS/2 EE 1.3, Presentation Manager, Sybase, SNA.

OS/2 Automated Equipment Identification Systems Development

1990 -- 1991

Design and development of highly distributed remote equipment identification and tracking, RF reader device status monitoring and controlling applications linked to a client-server relational database system and a mainframe host using APPC communications.
IBM C/2, OS/2 EE 1.2, Presentation Manager, IBM Database Manager (DB2/2), IBM Communications Manager, APPC (LU 6.2), IBM CS/2 (DAE), AVIO.

OS/2 Hypertext Languages and Tools Design and Development

1989  -- 1990

Research and development of a scrolling dialog technique, stack-based user-directed panel to panel flow for data collection and analysis, an on-line help manager subsystem for OS/2 1.1 and a hypertext application description language based on SGML designed for use by technical writers.
C, OS/2, Presentation Manager, Dialog Manager, IBM Database Manager, SGML.

DOS Network Point-of-Sale Controller Applications Development


Developed and enhanced retail store network POS products and developed a satellite linked credit verification subsystem.
MS C, MS-DOS, IBM LAN, IBM SDLC, Satellite Network.

68020 Graphical User Interface Systems and Application Development

1987 -- 1988

Developed graphical user interface and multiprocessor communications subsystems of a geological database and analysis application. Ported Apple Mac/Lisa based application and Apple QuickDraw API to a 68020 workstation subsystem residing in an IBM AT/compatible (80286) and designed and implemented asynchronise communications with MS-DOS subsystem tasks.
 C, Pascal, Apple QuickDraw, MS-DOS, Apple Mac/Lisa.

DOS Toll booth Collection System Design and Development


Designed, developed and documented user interface, automatic database manipulation, remote station monitoring and control, and report generation for a toll booth collection controller system.
Turbo C, Wizard C, MS-DOS, Greenleaf Communications API, SDLC, DBase IV.

DOS DWI Database Tracking System Design and Development

1986 -- 1987

Designed and Developed an intelligent weighted searching subsystem and user interface enhancement for a DWI database tracking system. Also developed other enhancements and mentored other developers in C language development.

RBASE5000 Video Rental Database Application Design and Development


Designed and Developed a video rental database system in RBase5000, incorporating pattern-based search criteria, video check in/out, customer maintenance and full reporting capabilities.
RBase5000, MS DOS.

DOS User Support and Applications Development

1985 -- 1986

Applications Development and user support.
Borland Turbo Pascal, DBASE IV, MS DOS.

Tandy Video Controller Subsystem Design and Development


Designed and Developed a high-resolution video display subsystem to provide up to 80 columns by 24 rows of display text in 6809 assembly, overriding the Microsoft Basic ROM controller code.
6809 Assembly, Tandy Color Computer, Microsoft Basic.