Software engineering what is software engineering

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: re can be freely shared with other users. Hence public-domain software are also referred to as shareware or user-supported software. Often a user may find a public-domain software suitable for his/her requirements. In this case, he/she can obtain it for free by downloading it from the Internet. The following are the advantages and limitations of downloading and using publicdomain software packages: 1. They are available for free. 2. They can be downloaded and used immediately. The user need not wait for the software to be developed and tested before the planned activity can be started. 3. They may not be properly tested before release and their support is normally poor as compared to a commercial software. Hence they may fail during operation and bug fixing may not take place soon. SOFTWARE DEVELOPMENT STEPS No matter whether a software is a pre-written software, or a customized software developed by a vendor or in-house, or a public-domain software, it has to be developed by someone in the first place. Developing a software and putting it to use is a complex process and involves the following steps: 1. Analyzing the problem at hand and planning the program(s) to solve the problem. 2. Coding the*program(s). 3. Testing, debugging and documenting the program(s). 4. Implementing the program(s). 5. Evaluating and maintaining the program(s). These steps have been covered in detail in the next few chapters. Chapter 11 deals with Step 1, Chapter 12 deal: with Step 2, and Chapter 13 deals with Steps 3, 4 and 5. SOFTWARE ENGINEERING What is Software Engineering? Towards the beginning of this chapter we saw that "software" is defined as the set of computer programs procedures, and associated documents that describe the programs and how they are to be used. On the other hand, "engineering" is defined as the systematic application of scientific knowledge in creating and building cost-effective solutions to practical problems. Hence "software engineering" is that branch of engineering t...
View Full Document

Ask a homework question - tutors are online