Vous êtes sur la page 1sur 6

Software Engineering-1 1.How have the early days affected software development practices of today?

Software impact on our society and culture continues to be profound. As its importance grows, the

software community continually attempts to develop technologies that will make it easier, faster, and less expensive programs at to build high-quality computer

Some of these technologies are targeted

specific application domain and others focus on a still others are more broad

technology domain and

based and focus on operating systems. Today software takes on a dual role. It is a product and at the same time, the vehicle for delivering a

product. As a product, it delivers the computing potential and as a vehicle used to deliver the product, software acts as the basis for the control of the

computer, the networks and the creation and control of other programs. Software delivers the most

important product of our time information. Software transforms personal data so that the data can be made more useful in a local context. It manages competitiveness. It

business information to enhance

provides a gateway to worldwide information networks and provides the means for acquiring information in all of its forms. The role of computer software has

undergone significant change over a time span of little more than 50 years. Dramatic improvements in hardware performance, profound

changes in computing architecture, vast increase in memory and storage capacity, and a wide variety of input and output options have all made it possible

for a significant contribution of software on our day to day life.


1. Give various definitions of Software Engineering.

Software Engineering is the systematic approach to the development, operation, maintenance and retirement of software. This is the definition as per IEEE According to Bauer, Software Engineering and use of sound

is nothing but the establishment

engineering principles in order to obtain economical software that is reliable and works efficiently on real machines. There is yet another definition for

software engineering. It is the application of science and mathematics by which the capabilities of computer equipment are made useful to humans via

computer programs, procedures, documentation. This is by Boehm.

and associated An engineering

approach to softwar e engineering is characterized by a practical, orderly, and measured development of of this approach is to

software. The principal aim

prod uce satisfactory systems on time and within budget. There is a good reason for tackling the problem of planning, developing, evaluating and

maintaining software using the engineering approach. Quite simply this approach is needed to avoid chaos in developing software. The engineering

approach is practical because it is based on proven methods and practices in software development. The approach is orderly and development can be mapped to fit customer requirements. Finally, this approach is

measured, during each phase, software metrics are applied to products to gauge quality, cost and reliability of what has been produced.

2.What is Software Reliability?

Explain.

Software reliability is a function of the number of failures experienced by software. a particular user of that

which the software does not deliver the

service expected by the user. Software failures are not the same as software faults although these terms are often used interchangeably. Formal specifications

and proof do not guarantee that the software will be reliable in practical use. The reasons for this are: (1) The specifications may not reflect the real requirements of system users many failures

experienced by users were a consequence of specification errors and omissions, which could be detected by not

ormal system specification. It may opaqueness of formal

even be the case that the

notations makes it more difficult for users to establish whether or not a system meets their real requirements. (2) The proof may contain errors Program proofs are large and complex so, like large and complex

programs, they usually contain errors. (3) The Proof may assume a usage pattern, which is incorrect. If the system is not used as if it is

anticipated, the proof may be invalid.

possible to measure if a system is 100% reliable as this would require an amount of time equal to the

lifetime of the system. However, as reliability requirements increase, system costs usually rise exponentially. This is mostly due to the need of

redundant hardware and a vast increase in testing costs to check that the required reliability has been achieved. As discussed some specifications, which

call for, ultra-reliable systems are unrealistic. The number of tests required to validate these specifications cannot be carried out in a reasonable time. 3.Explain the different stages in software design. Any software design problem must be tackled in three stages: I. Study and understand the problem without software design is

understanding effective

impossible. The problem should be examined from a number of different angles or viewpoints as t hese provide different requirements. II. Identify gross features of at least one possible useful to identify a number of choice of insights into the design

solution. It is often

solutions and to evaluate them all. The

solution depends on the designers experience, the

availability of reusable components, and the simplicity of the derived solutions. Designers

usually prefer familiar solutions even if these are not optimal, as they understand their advantages and disadvantages. III. Describe each abstraction used in the solution. formal documentation, the designer description. This may

Before creating

may write an informal design

be analyzed by developing it in detail. Errors and omissions in the high-level design will //////////////////////////////////////////////////////// For full Version visit http://smudeassignments.blogspot.com/

This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. //////////////////////////////////////////////////////

Vous aimerez peut-être aussi