Back

6. SOFTWARE DEVELOPMENT

 Idi na Hrvatsku Stranicu  Home Page  Next


In Chapter 3.4.3 already mentioned phases of software development. Conditional nature of the program by way of dealing with certain phases of which the digital computer specific stages of the writing and recording of one of the language processor, and is illustrated in Chapter 6.2. the example shown in the following subchapter.

Which of language processors to use depends on the type of problems they solve and the opportunities and the type of DCS which will be applied. Therefore, there are no strict rules. Sample tasks will be resolved on a PC computer with QBASIC or VISUAL BASIC language processor, and for carrying purposes or processing student population will use the tools that may use some of the database server as DELPHI. One of the top software program for monitoring of large firms and institutions, LOTUS-NOTES, it is very effective but also very expensive solution.

In Chapter 3.4.3 has already been noted that there are two basic groups of language processors with respect to the creation of the executive code execution mode executable. Briefly: COMPILER and INTERPRETER. To shift some reading source code compiler is used to create executable file (.exec or .com type) from the source code, then translates source code into executable (binary) version that can then be applied to test results, and if you notice an error condition program must be corrected in the source code, which then needs to be translated again and a new executable file and run it again and test. Interpreter done differently. Translates instructions one at a time directly from the source code in real time and perform translations. Translated result is nowhere preserved. Changes in the source code may be immediately and can be carried out during the execution of the program created. Consecutive interpreting instructions certainly gives significantly slower results with its processing speed, but it is easier to debug. Some language processors, as Quick BASIC, have a peculiarity and interpretation of the source code and its translation into executable file.

But no matter which of the language processor is applied, the process of creating the final results in stages and seen his creations are similar. Number of phases and their application depends on the 'school of programming', and the simple view of their importance sequence is described in the next chapter. Stages of software development are presented in the following sections through a few examples, but no display solution with the use of one language processor.



6.1. PHASES OF SOFTWARE DEVELOPMENT




Every day in life we encounter problems that bring us and we need to resolve in a way that we have chosen as the most appropriate, whether it be something completely new, or part of a routine that will take the already-known knowledge and solutions.

One example is the preparation of daily meals for the family, when our moms for example feast prepared cakes. The following table explains the procedure compared with the previously mentioned 7 phases of software development in Chapter 3.4.3.


Phase Making cake Description Tasks in the development of software
1. What do we want?  Definition of the task Identifying and general definition of the task.
2. What do we need?  Making a physical model Precision formulation of the task (physical model).
3. What are the ratios?  Making a mathematical model Mathematical model of conduct.
4. How is mixed?  Development of the algorithm Sequence of actions - algorithm and flowchart.
5. Where to bake?  Writing and input program Choice of of language processor.
6. How it turned out?  Testing Program Testing and correction of identified defects.
7. The final recipe.  Making of documentation Making program documentation and instructions.

Table 6.1.1 Development phases of making holiday cake.

The above example is an illustration of how approach solving any task. The following example shows the first four stages of problem solving in a number system conversion. The first three stages are well-defined set of data requirements and their inter-relationship and include a description of actions that lead to the final solution and is called an algorithm. The algorithm is a procedure for parsing problems (tasks) into precise little steps. Flowchart is a graphical representation of the algorithm in which the sequence of actions and their relationship to each showing interconnected geometric figures and standardized graphic symbols to beginning, end, order, decision, and more.

It should be borne in mind that in computing the parameters or variables in the programming process for the initial values typically have size ' 0 ', for example, the first field in the data matrix, or the upper left pixel in the graphical representation and the like. It has already been stated that the stages described only one possible example of how to approach problem solving and programming firms have their own procedures developed by their principles and requirements, usually described through a number of steps in relation to the previously described example. The seven stages of the basic structure of the sort that does not have to be the rule, but it can serve as a basis for the establishment of a complex developmental structures. Complex developmental structure favors the development teams and in itself will contain links between individual teams or members within the team in order to coordinate actions and insights of the participants in the development of software in the results of the individual members of the team or the teams.

The development of software is not a trivial job. Errors are possible in the design and the programming code. That one error correction (bug) may lead to more new to their number gradually decreased and was reduced to a minimum before the disclosure of the results. So the whole process is recursive, the current phase is possible to return to the previous order to perceived shortcomings. When the final product is almost always disclosed it is subsequently found to have some kind of failure. Not popular to disclose that he corrected a omission (bug), but marketing sounds much nicer it is executed UPDATE, as some kind of upgrade or something. Not .. but .. :-). 'Update' is a 'patch' that the manufacturer usually offers free. In this sense the term is similar to the upgrade, which includes the new features of the product (with the tacit patched bugs of course) and that something needs to recharge.

The process of describing any product in the development of software must be well documented. There is no place for fear that someone else will clip on to use this document, because it will not give anyone the creator. Indeed, descriptions and hints (remark) just the creator of software serve to remind us what he was doing, because after a few months surely forget 'some tiny details that only he understands'. The seemingly simple job installing the operating system on your computer there are a number of settings that need to be set to make the system more efficient and effective protection. The procedure is described in the document, which is commonly known as a to-do list (making process), which contains over one hundred actions described in detail. The list is usually made up of three columns: a number of actions, a description of the procedure to be performed to carry out the action and markings execution / non-execution of action (check mark). It allows you to be without a big 'remembering' the next day to continue with the list, which is up one point made the previous day and so on until the conclusion of the implementation of the actions described. The list can not be created in one day, but it is a document that is dynamically changes according to the needs and that is 'embedded' experience one or more of the creators of the list. Quality leaf justification will show only after a year of its regular updates. Thus, the list - yes, but its public disclosure - NO. Procedures described in the Appendix i.) only the thin part of one of these lists.

Nothing's worse disgrace and respect the user supplied program support from eternal correcting bugs. Certainly reduces the quality documentation procedure for their removal, and facilitate the implementation of additional software options, which, over time, the need for their product, as for example the extension of certain legal regulations changes in accounting programs. Software creates no 'overnight' and that it can take years of time until they 'matured' for final use. For example, one can take any program support and track its progress through the descriptions complement the different versions of the documentation that is often named 'Changelog ...' or 'What's new ...'. Need some time to reach the client software version 1.0 :-). Popularly called people 'developer' is just one of the people who participate in the preparation of program support. Depending on the type of the same team that will be a mathematician, an economist, a builder ... Teamwork has significantly increased in comparison to the individuality of this business. The importance of the team in the testing phase of software is a very important item and is usually performed as specified in Chapter 6.2.2; some of the descriptions QBASIC programming tool.


 Back
 Search
 Next

Citing of this page:
Radic, Drago. " Informatics Alphabet " Split-Croatia.
{Date of access}; https://informatics.buzdo.com/file.
Copyright © by Drago Radic. All rights reserved. | Disclaimer
 Content - Home
 Content  Informatics Alphabet