Software development, Software Engineering

Assignment Help:

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.  


Related Discussions:- Software development

What is cmm and cmmi, CMM = 'Capability Maturity Model', now known as the C...

CMM = 'Capability Maturity Model', now known as the CMMI ('Capability Maturity Model Integration'), developed by the SEI. It's a model of five levels of process 'maturity' that ver

Define the process of software change, What is meant by software change? ...

What is meant by software change? Once software is ready to  use, new requirement appear and existing requirements change as the business running that software changes parts of

What are 5 common problems in software development process, What are 5 comm...

What are 5 common problems in software development process? 1. Bad requirements - These requirements are unclear, too general, incomplete, or not testable. They cause problem

State about the data dictionary, State about the Data Dictionary  This...

State about the Data Dictionary  This is another tool of requirement analysis that reduces complexity of DFD. A data dictionary is a catalog of all components of a system. DFD

Explain the design steps in transaction mapping, Explain the design steps i...

Explain the design steps in transaction mapping. Review the fundamental model. Review and refine the DFD for the software. Verify whether the DFD has the transfo

Write short notes on estimation models, Write short notes on estimation mod...

Write short notes on estimation models. Empirical estimation models can be used to complement decomposition methods and propose a potentially valuable approach in their own rig

What are the merits of incremental model, What are the merits of incrementa...

What are the merits of incremental model? i. The incremental model can be adopted when there is less number of people included in the project. ii. Technical risks can be man

Discuss in brief about iterative waterfall, Discuss iterative waterfall ...

Discuss iterative waterfall Iterative waterfall model a) Requirement collecting  phase in which all requirements are specified. b) The design phase is responsible for cr

What is upwardly compatible software, "Upwardly compatible software" is sof...

"Upwardly compatible software" is software that is compatible with a later or more difficult version of itself. For example, an upwardly compatible software is able to occur files

Describe the prototyping methods in software process, Describe the prototyp...

Describe the prototyping methods in software process. Two methods i. Evolutionary prototyping - In this approach of system development, the early prototype is prepared and i

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd