Software development, Software Engineering

SOFTWARE DEVELOPMENT:

Software development is a human activity. It involves a clear understanding of the field of application, such as library and information science; knowledge of the technology such as of the computer system and a knowledge of the programming languages; an ability to communicate and observe; and a talent for invention and 'integration. Writing software would have been an extremely difficult task if it had to be done in the binary code (i.e., the language of Os and Is as it is the basic and only level of communication that a computer understands). Fortunately, computer scientists have developed specialised languages which enable them to construct a set of commands for the machine, without dealing directly with strings of binary digits. In other words, many programming languages exist, each with its distinctive grammar and syntax, and each intended for particular type of tasks. But, not any one of these languages can claim all round utility. This is to say that a language designed for scientific or business applications may not be suitable for writing programs to solve library problems, Therefore, choice of appropriate high level language is one of the first steps connected with developing a software. The programmer will have to express the job to be performed try the computer as also the method of doing it, in a step-by-step fashion, in the form of an algorithm. The logic of the algorithm must be faultless or else the program simply will not run. Another important aspect to be considered in this context, is the type or types of data that the computer is expected to handle and the ideal method of storing this data and retrieving it fen processing. By making the right decisions regarding the language, logic and programming techniques, the programmer can harness the power of the computer with maximum effectiveness.

Writing software requires highly developed individual skills, and there is no universal approach to this problem, which will yield perfect programs in all cases. The human and financial costs of developing new computer applications 'such as those for library and information processing and retrieval activities; are dominated by the cost of developing the necessary software. Experience shows that a large proportion of software costs is attributable to the maintenance (error detection, correction and other modifications) of software already produced. A disciplined approach is therefore recommended, in all the steps such as task definition, program design, coding, testing and fault detection associated with software development activity. It may also be mentioned that high quality documentation is essential at all stages. All this is a time consuming, labour-intensive and capital-intensive activity, which discourages development of new computer applications in different areas of information services. It is for this reason that a practising librarian or information professional should be exposed to readily available 'packaged' software.  

Posted Date: 10/24/2012 2:34:30 AM | Location : United States







Related Discussions:- Software development, Assignment Help, Ask Question on Software development, Get Answer, Expert's Help, Software development Discussions

Write discussion on Software development
Your posts are moderated
Related Questions
The aim of regression testing is to test that the fixes have not formed any other problems elsewhere. The aim is to ensure the software has remained intact. A baseline set of data

Q. What is Data Binding? Ans. The matrix that attempts to imprison the module-level concept of coupling is data binding. Data binding are a calculate that captures the data in

What is equivalence partitioning? Equivalence partitioning is a black box procedure that divides the input domain into classes of data. From this data test cases can be foun

Q. What is the use of a data flow diagram? Explain the important concepts of data flow diagram. Ans. A data flow diagram is utilized to show the functional view of an applica

Q. What is Boundary Value Analysis? Boundary Value Analysis: It is extensively recognized that input values at the extreme ends of input domain cause more errors in system. M

Ask quewhat is code restructuringstion #Minimum 100 words accepted#

Objectives of Data dictionaries:- 1) A standard definition of every terms in a system that is each item of data is uniquely identified and defined. 2) Simple cross-referenci

Q. What is Equivalence Partitioning? Equivalence Partitioning:-Equivalence partitioning is black box testing method that divides the input domain of a program into classes of d

What is Up time? "Up time" is the time period when a method is operational and in service. Up time is the sum of idle time and busy time.

Various attributes of cost drivers used in COCOMO model are: 1.  Physical attributes: These are concerned with needed characteristics of the software product being developed.