ChiMu  
 
Menu Edge About   Products   Services   Projects   Publications  
                   
 

Mark L. Fussell

mark.fussell@chimu.com
www.chimu.com/people/
markFussell.html

   

Qualifications

Qualifications
Focus Areas
Accomplishments
Clients, Employers & Projects
Publications
Technologies
Education
Status
Versions

Mark has over seventeen years of software development experience including fourteen years with object-oriented techniques and languages. His areas of specialty include growing teams, overall system architecture, architectural infrastructure, business analysis & domain modeling, and distributed information systems. He is skilled at producing simple and effective designs to handle very large and complex systems. He is also adept at educating and rallying teams to become superior through the best software practices.

Focus Areas

Mark focuses on helping teams become highly productive and predictable. He also concentrates on creating sound overall architectures and the necessary frameworks to support large project teams building complex information systems, as well as small project teams trying to quickly develop simpler systems.

His specialty areas include:

  • Team Building
    • Determining the most appropriate development methods, guidelines, and tools for a particular team.
    • Training teams to work effectively with their chosen methodology
    • Teaching the intricacies of use cases, conceptual modeling, and other analysis techniques.
    • Leading and supporting teams in their weekly activities
    • Methodologies: XP, RUP, Catalysis, Booch, and customized
  • System Architecture
    • Defining, documenting, verifying and disseminating the architecture of the system
    • Architecture Qualities: Evolvable, Cohesive, Object-oriented, Component-based, Distributed, Enterprise-scalable
    • System Categories: Operations, Data warehousing, OLAP and other DSS
  • Architectural Infrastructure
    • Creating and guiding the design and development of critical architectural components in Java, Smalltalk, and C++
    • Architectural Areas: Inter-system distribution, GUI frameworks (including ultra-light clients), domain model support, object-relational mapping, data and work-flow, meta-modeling
    • Technologies: CORBA, EJB, XML, OODBs, RDBMSs
  • Technical Review
    • Evaluating the quality and appropriateness of software and architectures to meet project needs.
    • Providing technical analysis of software patents

The kinds of projects he has worked on include:

  • Executive information and decision support systems for unified health care management
  • Enterprise-wide operations systems for global container shipping
  • Data warehouse and OLAP software products for a retailing software suite
  • A political and military information center
  • A drug usage analysis, bidding, and contracting system
  • A managed-care database and workflow system
  • An information referral and housing assistance system
  • Object-relational mapping frameworks and information-modeling (XML) architectures

Accomplishments

Examples of Mark’s previous accomplishments, working with many good people, fall into the following categories:

  Teams     Architecture     Infrastructure     Technical Review     Other  

Team Building, Leading, and Supporting

  • Development Process — Trained and lead multiple development teams to use incremental, use-case based, OO, and architecture based development processes. Formality varied between RUP, Catalysis, and XP, with customizations and heaviness appropriate for each development environment. Made sure the development process worked well for each team (from analysis to tested/delivered code) and was fully understood by every team member. Ensured team members were responsible for fully defining their processes and deliverables, estimating times, taking measurements, and supporting risk management.
  • Team Architectural Skills — Trained and mentored developers to proficiency with OO analysis, design and programming (Java, Smalltalk and C++), information system architectures, advanced versioning and configuration management (ENVY, VAJ, ClearCase, etc.), and team processes. Helped team to learn collaborative OO analysis and design through CRC sessions, paired programming, shared CASE/UML work, and similar techniques.
  • Team Design and Coding Skills — Developed design and coding standards for Java, Smalltalk and C++. Helped develop group processes in all areas, including configuration management, quality review, CASE usage, group communication, and education. Supported and consulted for most parts of the software development process including design, analysis, database design, client interfaces, and tool learning. Created tools for design, development, and documentation that help maintain standards, aid program development, support group collaboration and integration, and quickly produce useful documentation.
  • Team Analysis Skills — Taught the intricacies of use-case based development and OO methods (UML, Catalysis, Booch, OMT, etc.), as well as conceptual modeling (ORM, Kilov & Ross), entity-relationship modeling, and relational modeling to multiple teams of analysts and designers. Helped support the continued growth of modeling abilities within the development team.
  • Team Management Skills — Helped managers learn to predict, control, and support their teams that are using new development method. This included project scheduling for incremental \& iterative development, team motivation, and risk management.
  • General Skills and Overall Environment — Helped create a positive overall work environment and grew particularly strong & happy teams. Supported the continued growth of experienced developers, including helping them to be comfortable making public presentations (OOPSLA) and internal high-level management company presentations.

System Architecture

  • Multi-tier World-wide Operations System — Architect for the overall system and unified business model of a 3-tier global shipping operations system. Created, documented, and disseminated the system designs throughout a 30+ person project and supported the teams implementing the infrastructure and applications.
  • Data Warehousing and OLAP — Architect for a multi-tier data warehousing and OLAP product for the retail market. Formalized the conceptual model used by the system to be more general and less platform oriented. Worked with team to produce well-composed subsystem dependencies, layering, tiers, and design-level patterns. The general architecture continued into subsequent applications within a suite of retail-supporting products. Also helped perform acceptance, functionality, scalability and platform-independence tests including formal benchmarking analysis.
  • Rearchitecture — Architect and training consultant to help an eight person team develop their first object-oriented information system. Ported an application from a monolithic 4GL architecture to a well partitioned, 3-logical-layer architecture in a 5 week time span. Architecture and all major frameworks were integrated, functionality tested and performance tested within the first 2 weeks, and the second release was delivered 5 weeks after the first release.
  • Initial Architecture Work — Created or mentored the initial architectural work for applications including: customer relationship management, allocation planning, product management, and a multimedia political information center.

Architectural Infrastructure

  • Application Servers — Created design and supported implementation of a 3-tier application server and persistence system to meet global WAN requirements. Solution used VisualWorks, GemStone, C++, and Sybase.
  • Helped create the complete infrastructure of a multi-user Java application server for sophisticated OLAP processing.
  • Business Domain Environments — For multiple projects (container shipping, cargo shipping, drug management, and others) defined concepts for a company's unified business model, developed supporting business model frameworks, delegated ownership of the clusters of the model, and coordinated the integrity of the complete model.
  • GUI Frameworks — Imparted knowledge, designs and code for multiple GUI framework concepts (MVC, ValueModel, Domain Presentation, etc.) to UI framework team to build an ultra-thin client GUI system. Subsequently reviewed and supported development through multiple iterations of the frameworks.
  • Oversaw and supported (through high-level design review and mentoring) UI portions of system architecture. Developed user-interface standards for many applications on Macintosh and Windows platforms. Reworked user-interfaces of several systems to make them cleaner and more effective.
  • Persistence — Designed, developed, and productised FORM, a commercial framework for Object-Relational Mapping.
  • Was responsible for defining persistence approaches, selecting tools, and designing the glue surrounding persistence capabilities on more than half a dozen projects. Made sure persistence capabilities are as database independent as possible and are stable for the business model even when running without a database. Have worked with all major relational databases (Oracle, MS SQL Server, DB2, Sybase, Informix, etc.) and several object databases (primarily GemStone and ObjectStore).
  • Other Infrastructure Activities — Helped redesign and implement the infrastructure of an enterprise health care executive information system (EIS). Optimized performance of database, client, and GUI portions of the system.
  • Researched and developed MONDO: an architecture for encoding, modeling, and processing knowledge that uses XML, XSL, object-serialization, and similar technologies.
  • Designed and developed a dynamically extensible execution environment to support custom information systems. Developed and reworked several application frameworks for custom software development

Technical Review

  • Evaluated the quality and appropriateness of architectures and frameworks for projects and development teams. Suggested alternative approaches as needed, provided examples, designs, or full working code, and trained team to use new techniques.
  • Assessed the conformance of subcontracted projects to their original specification and whether they were compliant with technical requirements of the contract. This included both detailed analyses of capabilities and comparing functionality and quality to similar existing products.
  • Provided technical analysis of object-technology based patents.

Other Activities

  • Also worked on: large computer network creation and management, commercial WWW site creation, OODB functionality review, WAN network analysis, WWW/CORBA architectures for OOIS, visual programming environments, human factors and GUI guidelines, document processing and publishing systems

Clients, Employers, and Projects

Publications

Mark has produced architecture documents, training presentations, requirement specifications, guidelines, white papers, tutorials, design documents, and numerous other kinds of documents to support his focus areas. Some of his online publications include:

Technologies

Mark is experienced with many important technologies including distributed applications (CORBA, RMI, EJB), OODBs (GemStone, ObjectStore), RDBMSs (Oracle, Sybase, MS SQL Server, DB2, Informix), GUI frameworks (MVC, DP, ValueModel), hyper-document management (SGML, XML, XSL, WWW, Unicode), visual programming languages, GIS, and parallel processing. His primary programming language expertise is in Java, Smalltalk, C++, C, SQL-based, and Perl. His other languages include: Eiffel, Ada, Python, Lisp, Prolog, Postscript, TeX, Hypertalk, and Assembly (680x0, 80x86). He has worked with Unix, Windows, Macintosh, and a number of other operating systems on most major hardware platforms.

Education

Mark received his B.S. in Engineering and Applied Science from the California Institute of Technology

Status

Mark is working full time at Velidom building NowUR.com among other company projects.

Other Versions