Archive for January, 2018

I, A Programmer, Am Also A Quality Assurance Manager

January 31, 2018

To be strictly compliant with ISO-9001, Programmers must
use enforceable standard methods and processes.

Assembly Language Programmers used macros for common
multi-instruction processes. These macros, once developed,
were never changed.

Software “breaks fatally” when it illegally writes. The
error cannot be fixed and it might take the machine down.

There are many error detection code segments that programmers
use during checkout and then remove before delivery.

I developed a C++ Macro Preprocessor to provide a highly
competent macro capability to facilitate using error detection code.

Unlike the Macro Assembler, my C++ Macro Preprocessor prepared
source code exclusively from the Macros.

IBM developed the first piece of error-free software in 1968.
It was the PL/1 Compiler and it was a joy to use.

The PL/I Compiler was error free due the strict application of
the requirements of simple precedence.

In the late 1960’s, Bob Prince of Lockheed developed a simple
precedence based compiler writer which I used.

In the early 1970’s, I used the Lockheed Compiler Writer to
prepare non-compiler applications with moderate success.

I had difficulty with the Compiler Writer on non-compiler
applications because data flows differently than processes.

I realized many years later that a multidimensional precedence
process could manage both processes and the data flow.

I learned how to make a set of coupled precedence processors
that “policed” the use of classes and the flow of data.

I updated my C++ Macro Processor to render it capable of
deploying simple precedence principles to my programming efforts.

My Macro Processor satisfied the Standard Methods and
processes requirements of ISO-9001.

I inadvertently became a Quality Assurance Manager.

Advertisements

The Twitter Seminar On The Development of Error Free Software Continues — Session 7

January 30, 2018

ARE PROGRAMMERS SPECIAL QUALITY ASSURANCE MANAGERS?

Can a software engineer be a Quality Assurance Manager?
Quality Assurance is a management task.

To find out, let us look at the beginning of all Quality
Assurance programs; i.e., the Deming Cycle.

The Deming Cycle, first used in Japan in 1947, consists of
the following four steps.

The first Deming Cycle Step is “make a plan”. The second
Deming Cycle Step is “do the plan”.

The third Deming Cycle Step is “check the results”. The
four Deming Cycle Step is “change the plan if needed”.

The Deming Cycle appears to be a concise definition of
common sense!

Would you believe it if I told you that all programmers
are Quality Assurance Managers?

No! Then would you believe it if I told you that a computer
program is a Deming Plan?

A computer program is a Deming Plan to be done at the
client’s site by a computer, not by a person.

Most Programmers do not understand that they are very special
Quality Assurance Managers.

WHATIFWE required our programmers to be special Quality
Managers? Would this be a terrible inconvenience?

MORE IN THE NEXT MESSAGE

How Do I Make My Blog

January 29, 2018

There have been quite a few requests for advice on
“how to build a blog”. As you can see from my blog, I have
prepared a lot of posts. Therefore, I have learned how
to do it efficiently.

There are some simple rules for making your blog easy
to prepare.

1. Have a well-defined purpose for your blog. For myself,
my blog was a means of publicly documenting my research and
development efforts.

2. Use a standard format. Then you can build a template
which will greatly facilitate its preparation. I use
my development software to write the blog.

3. Don’t get carried away with an artistic design. I use
the free WordPress. I do not use any pictures; all I
have to do is paste in the text. Above all, I did not
have to develop the blog web-site.

Above all, recognize that every post you publish will be
in the public domain forever. I have been very careful
to put just enough information to identify and date my
efforts but not to give away any proprietary data.

Hope that this helps.

CODEPLEX SHUTDOWN.

January 27, 2018

For many years, I have used the Microsoft Codeplex site for my Programable
Software Development Environment project from which my current tools
could be downloaded.

Microsoft will shut down CodePlex in month of December and will no longer
be able to contain updated versions of my tools in October. There may
be another site which will replace CodePlex.

You can always get my current Software Development tools from my website,
http://www.whatifwe.com.

PROGRESS REPORT

January 26, 2018

This purpose of this post is to publish single line
reports on the projects performed during the week.

**************************************************************
**************************************************************

2018/01/21

CLASS DEVELOPMENT – COMMON ARRAY CLASS

The classcommonarray has been completely tested and is ready for use.

2018/01/23

CLASS DEVELOPMENT – COMMON ARRAY CLASS

A problem was encountered while attempting to export the classcommonarray
to the Apple Machine. Specifically, the tab-removal library did not properly
terminate all of software parts files. In these files, the ! used to terminate the
file was missing. Next task: find out why these finds were not terminated
property.

2018/01/24

TAB_REMOVAL

The problem in the tab_removal library was found and corrected on a Windows machine.
This library must now be exported to the Linux and Apple machines.

Prague Conference in 1987

January 24, 2018

In 1987, I presented a scientific paper at a conference
in Prague, Czechoslovakia.

At that time, Prague was a city in the territory under
control of the Soviet Union.

I have always performed my research on my own time and money.

I attended the conference on my vacation.

Needless to say, the other attendees were quite curious
about my personal research efforts.

During this time, I had an interesting conversation with
a Polish attendee while walking along the river:

POLISH ATTENDEE: We are not special.

MY RESPONSE: Being special is defined by what you do
to be the very best in your field.

POLISH ATTENDEE: We have no resources.

MY RESPONSE: Do you have a personal computer at your home?

POLISH ATTENDEE: Yes.

MY RESPONSE: Probably a better one than I have. My is
a Heathkit H89.

POLISH ATTENDEE: The bosses will not like it.

MY RESPONSE: Usually, the bosses don’t kill the goose
that lays the golden egg right away.

At this point he understood and I was effectively
“walking on water”.

You ask: why am I sharing this little bit of history
with you.

History is a great teacher and today we need to learn
this lesson.

The Twitter Seminar On The Development of Error Free Software Continues — Session 6

January 23, 2018

CAN WE PREVENT ERRORS DURING SOFTWARE DEVELOPMENT?

Suppose we had a software tool that produced source code
exclusively from a set of macros? Would it be restrictive?

A computing language is often considered the pallet where
the programmer expressive his creative juices.

Restricting the programming effort to a minimal set of macros
would take all of the fun out of the project.

In addition, a highly skilled programmer can be trusted to do
the job correctly without these constraints.

Would you believe it I told you that all programmers, even the
great ones, make errors.

The errors made by the junior programmers show up quickly
during checkout and are easy to fix.

The errors made by the senior programmer take a long time to
show up and are difficult to fix.

Restricting the “field of play” can greatly simplify the
development process.

Restricting the “field of play” can greatly reduce the
occurrence of errors.

In the hardware world circa 1980’s, management select the
Integrated Circuits to be used in the project.

Unfortunately, management cannot provided the an appropriate
set of software parts.

Programmers are needed to develop an appropriate set of software
parts. Is a programmer a QA manager?

WHATIFWE had a senior programmer who was also a Quality Manager?
Would this help?

MORE IN THE NEXT MESSAGE

WhatifWe127 — My Internet Interface

January 21, 2018

Hopefully, this post will answer many of the questions that I have received about the Internet services that I am receiving.

First, please understand that I do not have a team. There is one of me and I am home based.

My Internet service is provided by Earthlink.

Recently I changed from DSL to a cable Internet communication process due to a major regional outage.

My blog is provided by the free WordPress site which may or may not add some advertising.

I also have a whatifwe Codeplex site and and a @whatifwe2048 Twitter site.

I designed my Website using Microsoft Front Page.

I have successfully accessed my web-site and blog on a LINUX, WINDOWS, and MAC machine.

Limitation to My Response to Your Comments

January 20, 2018

Every day I receive between 50 and 100 comments. Many of these comments request information or advise from me.

I appreciate the honour of your request for information.

Unfortunately, there is only one of me managing and writing the blog. Consequently, I simply do not have enough time to reply to each of your questions.

There are many comments that ask the same question. In these situations where I have the information, I will provide my knowledge in a post, time permitting.

I will respond to any comment made by a person who is experimenting with my software development tools.

Thank You

PROGRESS REPORT

January 19, 2018

This purpose of this post is to publish single line
reports on the projects performed during the week.

**************************************************************
**************************************************************

2018/01/17

CLASS DEVELOPMENT – COMMON ARRAY CLASS

During the reconstruction / testing of the classcommonarray
library unreported error was found in the classcommonname
library. Specifically the classcommonarray attempted to
open a specific name where the classcommonname assumed that
it would only be opened once. Upgrading the classcommonname
library is the next task.

CLASS DEVELOPMENT – COMMON NAME CLASS

The classcommonname has been upgraded to allow names to be
opened any number times.

CLASS DEVELOPMENT – COMMON ARRAY CLASS

The classcommonarray has been functionally tested.