Home    

Software Development Process

Although some may think the software development process begins with the software design, it properly begins much earlier. I have developed software at companies that did not comprehend the benefits of the software development process, and have had to implement a process beginning where I was in control, but would prefer to have had the process begin with system engineering. If systems engineering is part of the software development process, then the process is complete and the system development will proceed smoothly.

The process continues with requirements analysis and software design and implementation.

The software development process should not stop once the product has been delivered. Product maintenance should be a part of the process, otherwise the product may become a legacy system and require costly reverse engineering efforts to add enhancements.

When developing a new system or analyzing an existing system, it helps to have tools. I have found many tools available from commercial vendors, as well as a collection of excellent tools available from the open source community.

Sometimes we receive requests to automate the translation of code from one language to another. I believe that if it is necessary to translate code, then it is better to reverse engineer the code to get the basic design, then re-design the system and then code it as a new system. It is very difficult to translate code automatically without losing some of the intent of the code. However, I did accept the challenge of creating a MUMPS to C++ transformer and have some sample code.

Since I created this site to document some of the skills learned during my career so far, it seemed that it would not be inappropriate to tell about me.

To me, a web site is a document, and as with any documentation, it should maintain a list of acronyms and references. I have read many books over the years, and found it difficult to remember which ones I got my information from, so I just listed a sub-set of some of the books in my collection.

The following pages are made from some of my notes on MUMPS, but some of the lessons learned can be applicable to systems written in any language.

  • Copyright