Expert Details

Expert in Software & Communication Network Engineering

Expert ID: 721666 Colorado, USA

Request Expert

Dr. S. Expert has accumulated considerable experience doing and teaching Software Engineering. Applications he has worked on include: an IBM 2780 RJE Emulator, two different Flight Simulators, a Traffic Intersection Simulation, an Object Oriented Concurrent Tool for Simulating Communication Networks, embedded control software to run a model train (using VxWorks), many simulations of computer and communication systems, accounting software, data reduction and analysis software, statistical analysis packages, and several device drivers. He has taught Software Engineering at both the undergraduate and graduate level, and in industrial settings. In particular, Expert designed and taught the first graduate course in Software Engineering ever taught at the University of Colorado in Colorado Springs. Recently he taught a graduate course in Software Requirements Engineering, the first step in Software Engineering, at Colorado Technical University in Colorado Springs.

Based on many years of software development experience, and many years of teaching and researching Software Engineering, he has developed a simplified Software Engineering process of his own. It is much less detailed than "traditional" processes, hence is easy to learn. Yet, it has been proven to work well in practice. In particular, it is a proven process for achieving a high degree of software quality. Expert'Expertprocess is superior to other software processes because it focuses on helping engineers deal with software process dynamics, without detracting from the objective of getting their work done in an effective manner. It is especially helpful for ensuring that software process management is done in a consistent, timely manner, again, without detracting from getting the job done.


Expert has accumulated considerable experience developing or directing the development of Concurrent and Real Time Software. Applications he has worked on include an IBM 2780 RJE Emulator, two different Flight Simulators, a Traffic Intersection Simulation, an Object Oriented Concurrent Tool for Simulating Communication Networks, and embedded control software to run a model train (using VxWorks).

He has specialized in concurrent and real time software systems, including computer communication software, since the early ‘70s. He has developed a practical software engineering process that works well to facilitate the development of reliable, high quality concurrent and real time systems. He has taught Concurrent and Real Time Software Engineering in an industrial setting as well as in University courses.

The Ada programming language is the only standardized programming language that includes language features specifically designed to support concurrent and real time programming concepts. Expert has been a student of Ada since the early ‘80s. He has taught Ada programming, and has used Ada in a variety of funded, as well as unfunded, research projects, since 1988. These research and teaching activities led to the development of a suite of programs, the Ada95 Test Suite, that illustrate a variety of the more advanced features of Ada95. Many of the programs in this suite are rather simple, serving primarily to illustrate one or another Ada language feature. However, some of that software, including a generic queue package, can be of considerable practical value for developing complex software. (Note: Expert offers the Ada95 Test Suite, at no charge, to anyone who requests it, i.e. via email.)

Expert is one of the world'Expertleading experts in doing, or training others, in Concurrent and Real Time Software Engineering with Ada.



/

While on sabbatical leave during the 1993-94 academic year, he worked on contract with ESL (a subsidiary of TRW) in Sunnyvale, CA. He devoted considerable time and effort evaluating CASE tools, including Rational APEX, Software through Pictures, and CARDTOOLS. He also helped design an industrial training program and developed and taught several short courses for that program, including Object Oriented Software Engineering with Ada, Object Oriented Software Engineering with C++, Computer Communications, and Concurrent and Real Time Software Engineering. After returning to Cal Poly, he continued to evaluate CASE tools and was hired back by ESL for two consecutive years to teach additional sections of the short courses.From 1991 through 1993, he conducted a major investigation in conjunction with a copyright litigation case. This involved careful review and analysis of several thousand lines of C code for several different versions of an application, to assess the likelihood that parts of one application were "copied" from the others. It also involved working closely with the client'Expertattorneys to learn about copyright law, what to expect in court, etc. He wrote many documents to describe or explain complex technical issues in terms that could be understood by laymen. Ultimately, the case was settled out of court.A key benefit of the Northrop F5 Flight simulator project (described in "Distributed Flight Simulation with Ada", see Selected Publications for the abstract) was that it laid the ground work for understanding the value of object oriented thinking for re-engineering an existing system. Based on that work and other experiences, in 1990 Expert and Dan Stearns, a colleague, developed and delivered a custom seminar on Object Oriented Re-engineering for Tandem Computers, Inc.While working full-time for SAIC, Expert was a part-time consultant for Digital Equipment Corporation (DEC). In 1984, he completed a performance analysis of database systems running under VMS. While much of the work was done at his home through a special communication link into the DEC facility, he attended technical meetings on site to clarify the objectives of his analysis and to report results.While working for Perkin Elmer Computer Systems Customer Products Group (1977-1980), he did on-site trouble-shooting and problem resolution. One five month effort supported Grumman Aerospace in their development of the A6E aircraft training simulator. Other assignments in the Chicago area included diagnosing and resolving communication system bugs (at two different sites) and disk I/O system bugs, and supporting complex software development work at the Michael Reese Hospital.

Expert may consult nationally and internationally, and is also local to the following cities: Denver, Colorado - Colorado Springs, Colorado - Aurora, Colorado - Arvada, Colorado - Pueblo, Colorado - Westminster, Colorado - Boulder, Colorado - Longmont, Colorado

Request Expert

Education

Year Degree Subject Institution
Year: 1988 Degree: PhD Subject: Computer Science Institution: Colorado State University
Year: 1975 Degree: MS Subject: Computer Science Institution: University of Kansas
Year: 1970 Degree: BA Subject: Mathematics and Philosophy Institution: Morningside College, Sioux City, IA

Work History

Years Employer Title Department Responsibilities
Years: 1997 to Present Employer: Undisclosed Title: Chief Executive Officer Department: Responsibilities: He markets and manages his services, and does everything else required to run a small business. This private, for-profit company, incorporated in Colorado, focuses primarily on his consulting business.
Years: 1988 to 1997 Employer: California Polytechnic State University Title: Professor of Computer Science and Computer Engineering Department: Responsibilities: He taught Computer Networks, Software Engineering, Simulation, Intro to Computer Science, and other courses; conducted research projects; was the Director of Computer Systems Laboratory; and was the interface with industrial affiliates.
Years: 1982 to 1988 Employer: Science Applications International Corporation Title: Senior Staff Scientist Department: Responsibilities: He developed simulations of military communication systems, communication systems and/or complex software engineering, systems analysis and evaluation, performance modeling and analysis, and other systems engineering activities.

He consulted with developers of military database applications. He also produced clearly written, detailed technical specifications and/or reports for Air Force Space Command and NORAD.

He supported technical meetings regarding the implementation of the Communication System Segment Replacement in the Cheyenne Mountain Complex.

He observed, critiqued and reported the status of tests of communication links for the Prototype Mission Operations Center and completed other various systems engineering tasks.
Years: 1980 to 1981 Employer: MITRE Corporation Title: Technical Staff Member Department: Responsibilities: He evaluated technology and engineered the architecture for the Communication System Segment Replacement in the Cheyenne Mountain Complex (NORAD). He also completed various systems engineering tasks in support of the False Missle Warning study and other tasks to support NORAD.
Years: 1980 to 1985 Employer: University of Colorado - Colorado Springs Title: Adjunct Faculty Department: Responsibilities: He taught Introduction to Computer Science (using FORTRAN) and Programming Languages; developed and taught new courses in Computer Communications, Databases, Computer Literacy, and a graduate course in Software Engineering.
Years: 1976 to 1980 Employer: Perkin Elmer Title: Custom Products Engineer Department: Computer Systems Division Responsibilities: One of his responsibilities was software quality assurance. In addition, he was a specialist in operating system internals, particularly the communication subsystem and device drivers, on-site trouble shooting and problem resolution for customers. He supported various customers in their development efforts, provided pre-sales support for clients who needed hardware or software components not available off the shelf, quoted the cost and scope of effort to develop custom products, and both worked on and directed custom product development.
Years: 1973 to 1976 Employer: University of Kansas Title: Systems Programmer Department: Computation Center Responsibilities: He supported various research projects, aided in data collection, analysis, and reduction, using SPSS and BMDP (two locally developed statistical packages) and developed new software when needed. He wrote special programs to convert "stranger tapes" (IBM, CDC, DEC, etc., formats) to be useful on the University'ExpertHoneywell 635 mainframe. He used the Time Sharing Subsystem (TSS) of GCOS and supported users as part of the Applications Support Group. He developed and maintained utilities under TSS and interfaced with campus users of remote job entry (RJE) facilities. He was also the Assistant Team Leader (vendor interface) of an 11 person Benchmark Team that observed competing vendors conduct a major Synthetic Benchmark. He managed the development of an IBM 2780 RJE Emulator (software) to run on an EAI Pacer 100 minicomputer.
Years: 1968 to 1970 Employer: Morningside College Title: Student Programmer Department: Computer Center Responsibilities: He developed software for an IBM 1130 in FORTRAN II, with commercial subroutines, to support generation of class rosters, grade reporting, etc. He also assisted student and faculty users of the facility.

Government Experience

Years Agency Role Description
Years: 1980 to 1988 Agency: NORAD and Air Force Space Command Role: Systems Engineer Description: During 1980-88, Expert worked primarily in the aerospace industry. This included Command, Control, Communications, and Intelligence (C3I) in Colorado Springs, on various projects for NORAD, and later for the Air Force Space Command. This work involved experience with a variety of mainframe, minicomputer, microcomputer, and communication system technologies, including VAX systems running VMS. Most of the work was doing communication systems and/or complex software engineering efforts. Initially, with the Mitre Corporation in 1980-81, Expert served as a design engineer for the Communication System Segment Replacement (CSSR) for the Cheyenne Mountain Complex. Later, with Science Applications International Corporation (SAIC), he served on the vendor team that won the CSSR contract. During this project, he held a DoD top secret clearance. Expert also worked on various aspects of Space Command communication system projects. These latter projects involved systems analysis and evaluation, performance modeling and analysis, and other systems engineering activities. In most cases clearly written, detailed technical specifications and/or reports were required.

Career Accomplishments

Associations / Societies
He has affiliations with the following organizations: served in various capacities as a volunteer leader in the Association for Computing Machinery (ACM), the premier scientific and educational society for computing professionals; Vice Chair for Liaison, SIGAda, the Special Interest Group on Ada; delivered an ACM Professional Development Seminar entitled Myths and Realities of Object Oriented Technology; Vice President of ACM; Chair of the SIG Board, the governing body of ACM Special Interest Groups; served on ACM Council; ACM Lecturer, delivered lectures at more than 50 student and professional ACM chapters; Proceedings Editor for ACM 85, the annual conference of the association; Finance Advisor to the SIG Board; Secretary- Treasurer, then Chair (two terms) of SIGSmall/PC (formerly SIGMini), the Special Interest Group for Small and Personal Computer Systems and applications; Distinguished Service award from SIGSmall/PC.
He has been a member of IEEE for more than 10 years. He is also a member of the Philosophy of Science Association and the Planetary Society.
Awards / Recognition
He has been the recipient of many awards including 1966 National Merit Semi-Finalist;
Presidential Scholar, Morningside College;
Phi Eta Sigma, Freshman Men'ExpertHonorary;
Outstanding Freshman Mathematics Student;
Kappa Mu Epsilon, Mathematics Honorary, Morningside College;
Blue Key International, Senior Men'ExpertHonorary;
Top 21st percentile of graded exams, William Lowell Putnam Mathematics Competition;
Zeta Sigma Honor Society;
Woodrow Wilson Designate;
NDEA Title IV Fellow, University of Kansas;
Eta Kappa Nu, Electrical Engineering Honorary, University of Colorado, Colorado Springs;
SAIC Fellowship, first ever awarded for Ph.D. study;
Outstanding Service Award, ACM SIGSMALL/PC;
Upsilon Pi Epsilon, Computer Science Honorary, CAL POLY;
Meritorious Performance and Professional Promise Award, CAL POLY.
Publications and Patents Summary
He is the author of more than 12 publications.

Additional Experience

Expert Witness Experience
From 1991 thru 1993, he conducted a major investigation in conjunction with a copyright litigation case. This involved careful review and analysis of several thousand lines of C code for several different versions of an application, to assess the likelihood that parts of one application were "copied" from the others. It also involved working closely with the client'Expertattorneys, at their location, to learn about copyright law, what to expect in court, etc. Many documents were written to describe or explain complex technical issues in terms that could be understood by laymen. Ultimately, the case was settled out of court.
Training / Seminars
While on the faculty at the University of Colorado, Colorado Springs, and at Cal Poly, Expert designed and implemented a number of new courses. Indeed, over the years, most of the University courses he has taught have been his own courses, not those developed by others. See Work Experience, for more details about those courses.

During the 1993-94 academic year, while on sabbatical leave, he worked on contract, on site, with ESL (a subsidiary of TRW), in Sunnyvale, CA. In that capacity he helped design an industrial training program and developed and taught several short courses for that program, including Object Oriented Software Engineering with Ada, Object Oriented Software
Engineering with C++, Computer Communications, and Concurrent and Real Time Software Engineering. After returning to Cal Poly, he was hired back by ESL for two consecutive years to teach additional sections of the short courses, on site.

In 1993, for the Bay Area Chapter of the ACM and the ACM Special Interest Group for Small and Personal Computer Systems (SIGSmall/PC) he developed and delivered a day long ACM Professional Development Seminar. The seminar was attended by more than 100 engineers and received considerable positive feedback.

A key benefit of the Northrop F5 Flight simulator project, the abstract for which is provided in Selected Publications was that it laid the ground work for understanding the value of object oriented thinking for re-engineering an existing system. Based on that work and other experiences, in 1990 he and his colleague Dan Stearns developed and delivered a custom seminar on Object Oriented Re-engineering for Tandem Computers, Inc.
Vendor Selection
As Director of the Computer Systems Laboratory (CSL), while on the faculty at Cal Poly, he was continually involved in evaluating existing technology and making decisions for hardware and software acquisitions to upgrade the laboratory. When he first became the Director of the CSL, until 1997 when he retired from Cal Poly, the number of computer systems in the laboratory increased by a factor of more than four, and the CSL LAN grew from a single Ethernet to more than 5 subnets. During his tenure at Cal Poly he also became recognized, on campus, as a key Expert in Telecommunications and Data Communicatiuons technology, and served as a consultant for the campus wide evaluation and procurement of such technology.

While working in the Aerospace industry, from 1980 thru 1988, much of the work he did involved evaluating existing hardware and software products and making procurement recommendations to government personnel.

While with the Custom Products Group of Perkin Elmer, from 1977-1980 he did pre-sales support for clients who needed hardware or software components not available off the shelf, quoting the cost and scope of effort to develop those products, and subsequently doing or directing their development. This often involved evaluating and purchasing hardware or software components to be integrated into the new product.

While he was with the University of Kansas Computation Center, in 1975, the University went through a major computer system procurement. He was chosen to be the Assistant Team Leader of an 11 person benchmark team that traveled to competing vendor sites to observe the conduct of an intensive synthetic benchmark. As Assistant Team Leader, he was the liaison between the UKANCC team and the vendor teams.

Language Skills

Language Proficiency
English He is proficient with the English language, especially for writing and critically reviewing complex technical documents such as specifications and requirements documents. He has developed numerous detailed technical documents, including specifications for communication systems adhering to the OSI Reference Model, specifications for graphical systems adhering to the CORE standard, and various research project reports, as well as professional publications. He is also an accomplished public speaker. In addition to serving as an ACM Lecturer he has conducted Professional Development Seminars, both for ACM and for private industry, and he has delivered numerous papers at professional conferences.
Spanish Although Expert would not say he is "highly" proficient in Spanish, he is able to converse with native Spanish speakers in an "adequate" manner when he travels abroad to Spain or Mexico.

Fields of Expertise

application software design, computer programming, computer software, object-oriented design, software design, software engineering, software process dynamics, software process management, software product quality, software systems requirements definition, software testing, Ada programming language, Ada programming language training, Generic Reusable Ada Components for Engineering, real-time software, real-time embedded system software development, real-time programming, real-time system, concurrency (computers), concurrent software, concurrent software engineering, real-time software engineering, communication system engineering, Ada programming language training, Generic Reusable Ada Components for Engineering, real-time software, real-time embedded system software development, real-time programming, real-time system, concurrency (computers), concurrent software, concurrent software engineering, real-time software engineering, network capacity, computer engineering software, industrial training, computer forensics, Internet infrastructure, application service provider, Internet standard, Web development, World Wide Web programming, World Wide Web application, network reliability, software conversion, physical layer, hypertext markup language, World Wide Web software, software engineering research management, Simple Network Management Protocol, software validation, client/server computing, software standard, software engineering process standard, local area networking, Common Object Request Broker Architecture specification, software selection, computer networking, system analysis, computational method, computation, software testing laboratory, software certification, software maintenance, software copyright, iterative method, software package, software modeling, software product development assessment, software product assessment, assembly language programming, computer-aided software engineering, microinstruction, microcode development, computer software technology innovation, computer system integration, simulation software, LAN/WAN interconnection, statistical computer software, internetworking, Ethernet Network, application software, computer data communication protocol, programming language processor software, computer language, database programming language, simulation programming language, batch programming language, Structured Query Language, BASIC programming language, local area network, software engineering systems design, software design for safety, application program interface, client/server architecture, intranet, Internet, object-oriented analysis, formal language, computer system, low-level programming language, database management system, International Organization for Standardization, communication network, algorithm, computer mathematics, computer technology, computer, testing programming language, system tuning, software safety, software reliability, software re-engineering, software quality assurance, software metrics, software inspection, software engineering benchmarking, software engineering baselining, procedural programming language, object-oriented programming language, object-oriented development, networking, hypertext, hypermedia, network, database, computer science, computer network, computer algorithm, computational mathematics, compiler, communication software, central processing unit, C programming language, assembly language, assembler

Request Expert

Dev Tool:

Request: expert/software-communication-network-engineering
Matched Rewrite Rule: expert/([^/]+)(?:/([0-9]+))?/?$
Matched Rewrite Query: experts=software-communication-network-engineering&page=
Loaded Template: single-experts.php