100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached
logo-home
tutorial-work-week-1-6-with-solutions $11.49   Add to cart

Class notes

tutorial-work-week-1-6-with-solutions

  • Course
  • Institution
  • Book

tutorial-work-week-1-6-with-solutions

Preview 2 out of 8  pages

  • January 28, 2020
  • 8
  • 2016/2017
  • Class notes
  • Unknown
  • Unknown
avatar-seller

Available practice questions

Flashcards 12 Flashcards
$7.49 0 sales

Some examples from this set of practice questions

1.

What is the most important difference between generic software product development and custom software development? What might this mean in practice for users of generic software products?

Answer: 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 and controlled by the customer. The implications of this are significant – the developer can quickly decide to change the specification in response to some external change (e.g. a competing product) but, when the customer owns the specification, changes have to be negotiated between the customer and the developer and may have contractual implications. For users of generic products, this means they have no control over the software specification so they cannot control the evolution of the product. The developer may decide to include/exclude features and change the user interface. This could have implications for the user’s business processes and add extra training costs when new versions of the system are installed. It also may limit the customer’s flexibility to change their own business processes.

2.

Based on your own knowledge of some of the application types discussed in section explain, with examples, why different application types require specialized software engineering techniques to support their design and development.

Answer: Different application types require the use of different development techniques fora number of reasons: 1. Costs and frequency of change. Some systems (such as embedded systems in consumer devices) are extremely expensive to change; others must change frequently in response to changing requirements (e.g. business systems). Systems that are very expensive to change need extensive upfront analysis to ensure that the requirements are consistent and extensive validation to ensure that the system meets its specification. This is not cost effective for systems that change very rapidly. 2. The most important ‘non-functional’ requirements. Different systems have different priorities for non-functional requirements. For example, a real-time control system in an aircraft has safety as its principal priority; an interactive game has responsiveness and usability as its priority. The techniques used to achieve safety are not required for interactive gaming; the extensive UI design required for games is not needed in safety-critical control systems. 3. The software lifetime and delivery schedule. Some software systems have a relatively short lifetime (many web-based systems), others have a lifetime of tens of years (large command and control systems). Some systems have to be delivered quickly if they are to be useful. The techniques used to develop short-lifetime, rapid delivery systems (e.g. use of scripting languages, prototyping, etc.) are inappropriate for long-lifetime systems which require techniques that allow for long-term support such as design modeling.

3.

Discuss whether professional engineers should be certified in the same way as doctors or lawyers.

Answer: 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. 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. • The certification implies responsibility in the event of disputes. The 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 people into the profession. Disadvantages of certification • 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 organizations. • Certification tends to stultify change. This is a particular problem in an area where technology developments are very rapid.

4.

Code auto-generated by the GUI Builder is not directly editable by the user. Is this a good or bad feature? How can you change variable names to names that are more meaningful?

Answer: The rationale is that if you allow auto-generated code to be edited, then those changes will be lost when you next auto-generate code. Complete code regeneration is much easier to do than partial regeneration. Use the property editor to change the names of controls.

5.

Suggest why it is important to make a distinction between developing the user requirements and developing system requirements in the requirements engineering process.

Answer: There is a fundamental difference between the user and the system requirements that mean they should be considered separately. 1. The user requirements are intended to describe the system’s functions and features from a user perspective and it is essential that users understand these requirements. They should be expressed in natural language and may not be expressed in great detail, to allow some implementation flexibility. The people involved in the process must be able to understand the user’s environment and application domain. 2. The system requirements are much more detailed than the user requirements and are intended to be a precise specification of the system that may be part of a system contract. They may also be used in situations where development is outsourced and the development team need a complete specification of what should be developed. The system requirements are developed after user requirements have been established.

6.

Suggest two advantages and two disadvantages of the approach to process maturity that is embodied in the SEI’s Capability Maturity Framework.

Answer: Advantages of process improvement frameworks 1. The approach provides a means of measuring the state of a process and a structured approach to introducing process improvements. 2. It is useful as a way of building on the experience of others in process improvement. Disadvantages of process improvement frameworks 1. Like any measurement system, there is a tendency to introduce improvements to improve the measured rating rather than concentrate on improvements that meet real business goals. 2. The maturity model approach is expensive and bureaucratic to operate. It is not really suitable for organizations that use agile development. In your capstone project, the major problems that students encounter are 1. Getting the scope right 2. Estimating the time required to implement requirements/features Generally, having requirements change during the project is not an issue. Agile will help with 1 and 2 provided that features / requirements are prioritised.

The benefits of buying summaries with Stuvia:

Guaranteed quality through customer reviews

Guaranteed quality through customer reviews

Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.

Quick and easy check-out

Quick and easy check-out

You can quickly pay through credit card or Stuvia-credit for the summaries. There is no membership needed.

Focus on what matters

Focus on what matters

Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!

Frequently asked questions

What do I get when I buy this document?

You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.

Satisfaction guarantee: how does it work?

Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.

Who am I buying these notes from?

Stuvia is a marketplace, so you are not buying this document from us, but from seller pateldivyesh6859. Stuvia facilitates payment to the seller.

Will I be stuck with a subscription?

No, you only buy these notes for $11.49. You're not tied to anything after your purchase.

Can Stuvia be trusted?

4.6 stars on Google & Trustpilot (+1000 reviews)

95786 documents were sold in the last 30 days

Founded in 2010, the go-to place to buy study notes for 14 years now

Start selling
$11.49
  • (0)
  Add to cart