Solutions - CECS CSULB

Document Sample
Solutions - CECS CSULB Powered By Docstoc
					                      CECS 445 Fall 2011 Exam One Solutions

For multiple choice questions, circle the letter of your chosen answer. Any answers which are
not clearly indicated will be considered wrong. Each correct answer is worth 5 points.

Questions 1-5 are based upon the Wiki paper “History of Software Engineering”.

1. Software engineering had emerged as a bona fide profession by the early
      (a) 1960’s       (b) 1970’s     (c) 1980’s     (d) none of these
2. Today fewer software consumers are paying for the development of custom software
   applications and instead are buying
      (a) inexpensive hardware systems.
      (b) commercial off the shelf software.
      (c) artificial intelligence based expert systems.
      (d) none of these
3. The initial boost for software engineering came in 1968 during a Science Committee
   conference sponsored by
      (a) Department of Defense (b) NATO             (c) MIT        (d) none of these
4. The software crisis discussed in the paper identified three main problems of software
   development. Name any one of them.
   1. Cost Overruns                                  (not in paper: missed schedules)
   2. Property Damage
   3. Loss of life

5. The biggest impact on software engineering in the 1990’s was
      a. the Internet.
      b. Lightweight Methodologies.
      c. the introduction of high level languages.
      d. none of these.

Questions 6 - 11 are based upon the paper “A Rational Design Process: How and Why to
Fake It”.

6. In most cases the people who commission the building of a software system
       a. do not want to pay for a good design.
       b. know what they want but cannot articulate their desires.
       c. do not have enough time to attend design meetings.
       d. None of the above
7. Even if we knew and fully understood all the details of a complex system at requirements
   definition time, if it takes one year to build the system then the final product might not be
   what the customer needs at the time of system delivery because
       a. we did not follow a good methodology.
       b. the requirements changed because of external reasons.
       c. the developers did not cooperate effectively.
       d. None of the above.

8. It is good to identify an ideal software development process even if we can’t actually follow
   it exactly in practice. Parnas listed 5 reasons for this. Write one of his reasons in the provided
        1. Designer’s need guidance.
        2. We will come closer to a rational design if we have a process to follow.
        3. Enables good design reviews and the transferring of ideas, people and software to
           other projects.
        4. We can better measure progress.
        5. Allows review by outsiders.

9. A new complex system will often times present new concepts and domains to the software
   development team that is developing it. Which of the documentation problems does this fact
   lead to?
       a. The developers consider documentation a necessary evil.
       b. The documentation is poorly organized.
       c. Confusing and inconsistent terminology.
       d. None of the above

10. If each of our documents has a well-defined format we can hopefully avoid what
    documentation problem?
        a. Boring prose.
        b. Myopia.
        c. Poor organization.
        d. None of the above

11. The final documentation differs from the ideal documentation in what one important way?

   It will include alternatives that we considered and rejected and the reasons we rejected them.

Questions 12 – 20 are taken from “No Silver Bullet…”
12. List and describe one of the four inherent properties of software system construction that
    makes it unlikely a silver bullet will be found.
    1. Complexity
    2. Conformity
    3. Invisibility
    4. Changeability

13. Which of the past breakthroughs has had the greatest effect on software productivity,
    reliability and simplicity?
        a. Time sharing
        b. Workstations
        c. High-level languages
        d. Unified programming environments

14. The Ada philosophy is more of an advance than the Ada language itself. It is the philosophy
    of modularization, abstract data types and hierarchical structuring. (Each blank can be
    one more words.)

15. Complete the following 2 definitions of AI:

       a. AI is the use of computers to solve a problem that if a person solved that same
          problem we would consider that person intelligent.

       b. AI is the use of computers to solve a problem in the same way as a human would.

16. The generation of a program for solving a problem from the statement of the problem
    specifications is known as
       a. graphical programming.
       b. an expert system.
       c. automatic programming.
       d. none of the above

17. Why can’t we be 100% sure a program will always work correctly even if its programmer
    has done a proof of correctness of the code? The proof of correctness may be incorrect.
18. Today many people satisfy their software needs on-time (almost immediately) and within
    budget by employing which favorable attack?
       a. expert systems
       b. rapid prototyping
       c. buy vs. build
       d. none of these

19. Assume we don’t have a complete set of requirements because the customer is not
    completely sure of what they want. Therefore, we will evolve the requirements by providing
    temporary solutions for the requirements we currently have and discussing them with the
    customer to produce the next generation of requirements. We do not intend on using our
    temporary solutions. This is the concept of
        a. automatic programming.
        b. object-oriented programming.
        c. workstations.
        d. rapid prototyping.

20. The author states that the most important single effort we can mount in order to successfully
    build large, complex software systems is to develop
        a. higher level languages.
        b. faster, less expensive workstations.
        c. great designers.
        d. None of the above

Shared By: