Curriculum Vitae
Object-oriented program design using
UML
(Select Enterprise) and Design Patterns.
Long-standing Visual C++ programmer using
MFC
for Windows NT and 98.
Simulation, optimisation and Genetic Algorithms.
Experience with the Internet and
HTML.
Recent Work
Jul 1997 - Aug 1999 Lanner Group, Redditch
Discrete Event Simulation Software
Senior Designer/Programmer
Created Business Processes, Class Diagrams and Object Sequence Diagrams with Select Enterprise for a general-purpose Simulation Engine. Simplified the design with patterns such as: Structure; Visitor; Factory; Observer/Notifier; Mediator; Template; and Singleton.
Applied this framework to a specific
C++/MFC
program that scheduled tankers and modelled liquid flows through ports. Built and tested the classes with Developer Studio 5.0. Identified possible areas of reuse elsewhere.
Added features to a simulation optimiser that used simulated annealing and hill-climbing. This C++ program repeatedly called the simulation of a model with slightly differing components.
|
Education
Sep 1992 - Sep 1993 Bristol University
M.Sc. in Artificial Intelligence
Project and Dissertation investigating object-oriented implementation of Genetic Algorithms in C++. Courses covering logic programming with reference to Prolog; expert systems; fuzzy set theory; neural networks; and machine learning.
1974 - 1977 Bristol University
2,1 B.Sc.(Hons) Computer Science with Mathematics
|
Jul 1996 - Mar 1997 Reuters, Stamford, CT
Fixed-Income Bonds Analysis
Consultant Programmer/Designer
Built a
DLL
in Visual C++/MFC
4.2 for Excel to
call financial analysis software. The
DLL
reorganised and managed incoming
parameters. It also pulled data from Oracle via Objects for
OLE.
Designed the classes using Rumbaugh's OMT diagrams.
Also prototyped
OLE
Automation and ODBC as other possible technologies.
|
Earlier Work (Summary)
|
http://www.btinternet.com/~a.gibb
Earlier Work (Details)
Feb - Dec 1995 IBM, Portsmouth, England
Telephone Billing
Improved and produced new features for
Visual C++/MFC
program that arranged phone bills into cost centres. Designed and built C++ classes that provided
CUA
standards for a Windows billing program.
|
Oct 1991 - Feb 1992 Laurentian Life, Gloucester
Financial Services
Corrected programs running under Windows and MS-DOS 5 on IBM PS/2s.
|
May - Sep 1994 Laurentian Life, Gloucester
Financial Services
Built Paradox database and Visual C++ routines to read it.
|
Feb - Aug 1991 Allied Dunbar, Swindon
Insurance, Pensions and Mortgages
Designed and built C program to transfer clients' details from several sources into a relational database. The program created a series of SQL
statements for this.
|
Apr - Aug 1992 Fame Computers, Birmingham
Financial Services Software House
Maintenance and testing of C programs.
|
May - Dec 1990 Sun Life Assurance, Bristol
Life Insurance, Pensions and Bonds
Completed coding of C routines to access database via SQL. Programmed logic behind PM windows to front-end 3270 session. Used IS/2, an object oriented 4GL for OS/2 programs.
|
http://www.btinternet.com/~a.gibb
Genetic Algorithms
ASG Systems (my own company)
The gaps between contracts give me time to design and code an object-oriented Genetic Algorithm in C++ and
MFC/Windows.
The design has been a simple case of identifying classes and their operations. I intend to formalise this, possibly by using Rational Rose.
The coding and testing of each class has been done in isolation as much as possible. By deriving classes from an abstract base class (ABC) I could create a Generic Tester that calls a virtual Test method. Each class's Test basically exercises the class's methods and reports back to the Tester (itself derived from an
ABC).
I am now also building the bridge from the other end by writing a prototype that will allow a user to specify a set of variables and an objective function of them. He may also select various
GA
options, then run the algorithm.
Incidentally having started way back on Microsoft C++ 7.0 I created a base
MFC
application from which others can be derived by the use of Design Patterns. However, the Wizards in later versions of Visual C++ rendered this redundant. It was an interesting first application of some of these patterns though.
http://www.btinternet.com/~a.gibb
Andy Gibb
Winchester
UK
7th December, 1999