Thanks to visit codestin.com
Credit goes to www.scribd.com

100% found this document useful (1 vote)
282 views2 pages

Chapter 1 Introduction: Exercise S

Chapter 1 QA

Uploaded by

anupam20099
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
282 views2 pages

Chapter 1 Introduction: Exercise S

Chapter 1 QA

Uploaded by

anupam20099
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

EXERCISE S

1.1 By making reference to the distribution of software costs discussed in Section 1.1.6, explain why it is appropriate to consider software to be more than the programs that can be executed by end-users of a system. 1.2 What are the differences between generic software product development and custom software development? 1.3 What are the four important attributes which all software products should have? Suggest four other attributes that may sometimes be significant. 1.4 What is the difference between a software process model and a software process? Suggest two ways in which a software process model might be helpful in identifying possible process improvements. 1.5 Explain why system testing costs are particularly high for generic software products that are sold to a very wide market. 1.6 Software engineering methods became widely used only when CASE technology became

.
Chapter 1 n Exercises 19 available to support them. Suggest five types of method support that can be provided by CASE tools. 1.7 Apart from the challenges of heterogeneity, rapid delivery and trust, identify other problems and challenges that software engineering is likely to face in the 21st century. 1.8 Discuss whether professional engineers should be certified in the same way as doctors or lawyers. 1.9 For each of the clauses in the ACM/IEEE Code of Ethics shown in Figure 1.6, suggest an appropriate example that illustrates that clause. 1.10 To help counter terrorism, many countries are planning the development of computer systems that track large numbers of their citizens and their actions. Clearly this has privacy implications. Discuss the ethics of developing this type of system

Chapter 1 Introduction
Solutions provided for Exercises 1.2, 1.3, 1.4, 1.6, 1.7 and 1.8. 1.2 The essential difference is that in generic software product development, the specification is owned by the product developer. For custom product development, the specification is owned by the customer. Of course, there may be differences in development processes but this is not necessarily the case. 1.3 For important attributes are maintainability, dependability, performance and usability. Other attributes that may be significant could be reusability (can it be reused in other applications), distributability (can it be distributed over a network of processors), portability (can it operate on multiple platforms) and inter-operability (can it work with a wide range of other software systems). Decompositions of the 4 key attributes e.g. dependability decomposes to security, safety, availability, etc. are also possible answers. 1.4 A software process is what actually goes on when software is developed. A software process model is an abstraction and simplification of a process. Process models can be used to help understand real processes and to identify which aspects of these processes could be supported by CASE tools. 1.6 Method support provided by CASE tools: Editors for specific graphical notations used Checking of the 'rules' and guidelines of the method Advice to tool users on what to do next Maintenance of a data dictionary - all names used in the system Automatic generation of skeleton code from the system models Generation of reports on the design 1.7 Problems and challenges for software engineering

Developing systems for multicultural use Developing systems that can be adapted quickly to new business needs Designing systems for outsourced development Developing systems that are resistant to attack Developing systems that can be adapted and configured by end-users Finding ways of testing, validating and maintaining end-user developed systems There are obviously lots of other problems that could be mentioned here. 1.9 Advantages of certification Certification is a signal to employers of some minimum level of competence. Certification improves the public image of the profession. Certification generally means establishing and checking educational standards and is therefore a mechanism for ensuring course quality. Certification implies responsibility in the event of disputes. Certifying body is likely to be accepted at a national and international level as speaking for the profession. Certification may increase the status of software engineers and attract particularly able p eople into the profession. Disadvantages of certification 4

NOT FOR PUBLIC DISTRIBUTION


Ian Sommerville 2006 Certification tends to lead to protectionism where certified members tend not to protect others from criticism. Certification does not guarantee competence merely that a minimum standard was reached at the time of certification. Certification is expensive and will increase costs to individuals and organisations. Certification tends to stultify change. This is a particular problem in a n area where technology developments are very rapid. These are possible discussion points - any discussion on this will tend to be wide ranging and touch on other issues such as the nature of professionalism, etc.

You might also like