This picture can also be seen as the life cycle of a program. As each step of production phase is a new cycle in itself each cycle has also its own end product.
- The Analysis delivers a report and Design creates both Functional and Technical reports, the specifications of a program.
- The Creation cycle produces the program (finally)
- The Testing cycle tells the programmers what was either not according to specifications or resulted in errors.
- After implementation (introduction and installation of the program at the user’s workplace) software starts a production cycle.
- If the company or department is doing a good job (after sales) an evaluation cycle follows after the program has gone into production. From that evaluation complaints, suggestions, errors and new user requirements are used for a new Analysis cycle: a so called MoSCoW list is created and used in the Analysis cycle.
Moscow means: Must have, Should have, Could have and Want to have (wish list)
What is a program
Any computer only works from a set of instructions in order to execute a specific task.
A set of instructions combined into a file or object is often referred to as a program or class.
The contents of such a file is also called: source code or logic.
Depending on the programming language and the syntax the source code is written in, the sources are optimized and translated. The product of this translation is what is often called machine code.
After the source code is compiled on a certain machine the resulting code can most certainly not be read by a normal person. Or better almost nobody.
This process we call the process of compiling: in other words the source’s code is translated into something that can be understood by a computer’s CPU.
With most modern languages there is a single compiling run resulting into machine language. And the CPU does not have to interpret the pre-compiled or also called the opcode result:
the source code (readable) is translated into machine code that can be executed directly by a computer’s processor.
Interpretation can be seen as if your own mother tongue would be translated into Esperanto. This language will not be understand by the computer but it knows how to translate Esperanto into its own language: machine code.
However translations can be on different levels. From a single shot, for the CPU not a fully compatible compilate – also called opcode – into and through various transitional stages of compilation.
From source code to what is “translated” into 100% “computer language”.
This means: a self contained running program called an “executable”.
This translation or compilation can either be done by software – as explained above – or “hardware”.
An example of the first method: interpretation is that the computer reads the opcode and compiles it while running the program. The early forms of BASIC were such an example.
The latter method is mostly an EPROM mounted on a computer board containing instructions. (micro code)
As an example look how Soccam- a programming language for parallel processors- is implemented: it is integrated in a chip mounted on a board.
A program is a sequence of instructions that can be executed by a computer (CPU) that performs a certain task intentioned by the programmer
Within a program actions are defined that should be executed by a computer. These actions are put in a predefined order: a logical path. And, if done correctly, in such a way that a fast, optimal and efficient execution is assured.
Sounding more scientific, surely more words, but with the same massage
Creation of a program
In the beginning days of software development the situation was:
There was no client
Or the end user – analyst – designer – programmer was the client all in one. Being one’s own client. There was no communication other then with coworkers, let alone that people outside your group understood what you where talking about, if you were allowed to do so anyway.
by Cornelis Robat, editor
Seeking a custom software development solution visit http://fulcrumdesignllc.com
- Mobile Marketer will be back on March 27Mobile Marketer is taking a short hiatus and will be back better than ever on March 27.
- TV + mobile = millennial engagementBy Kevin O'ReillyThere is a common misconception that millennials have abandoned traditional television in favor of video streaming, social media and other Web-based activities via mobile devices.
- Factors reshaping the mobile app economyBy Robert WildnerAdvertisers are starting to invest more in finding quality users for their apps – those who will either make purchases or engage with the app long enough to consume ads.
- How mobile point-of-sale goes beyond checkoutBy Josh GoodwinMobile POS solutions can prevent losing a sale by providing endless-aisle capability.