Object-Oriented Software Development Course Quiz
37 Questions
0 Views

Object-Oriented Software Development Course Quiz

Created by
@ExcitedFresno5042

Podcast Beta

Play an AI-generated podcast conversation about this lesson

Questions and Answers

What is the primary focus when writing a Use Case?

  • The detailed UI interactions involved.
  • The actor's intent and what they input into the system. (correct)
  • The specific technologies used in the development.
  • The internal workings of the system.
  • During the Point of Sale (POS) checkout process, what is the cashier responsible for after entering the item identifier?

  • Processing a refund for previous purchases.
  • Searching for stock availability.
  • Recording the sale line item and presenting the total to the customer. (correct)
  • Issuing a receipt to the customer.
  • What type of approach is recommended for writing Use Cases during early requirements phase?

  • Essential style that excludes UI and focuses on actor goals. (correct)
  • Only focuses on what technology will be used.
  • A hybrid that describes both UI and internal systems.
  • Concrete style that includes detailed UI elements.
  • Who typically writes Use Cases?

    <p>Members of the development team and user involvement is desirable.</p> Signup and view all the answers

    What strength makes Use Cases widely used for over 30 years?

    <p>Their ability to scale in both detail and degree of formality.</p> Signup and view all the answers

    What is the primary teaching element employed in the course?

    <p>Lectures</p> Signup and view all the answers

    What is required to pass a lab assignment?

    <p>Oral presentation, submission, and waiting for feedback</p> Signup and view all the answers

    When will the digital written exam take place?

    <p>October 17th, 14.00-17.00</p> Signup and view all the answers

    What is the consequence of missing the deadline for a lab submission?

    <p>Submission will not be reopened until week 42</p> Signup and view all the answers

    How many credits are assigned for the written exam in the TOMK18 course?

    <p>4 credits</p> Signup and view all the answers

    What is one of the rules regarding discussing lab assignments?

    <p>Discussion with peers is allowed, but work must be individual</p> Signup and view all the answers

    What is a suggested approach when using generated code?

    <p>Understand and rework it to fit your needs</p> Signup and view all the answers

    What grading system is used for lab assignments in the TOUK18 course?

    <p>Pass/Fail</p> Signup and view all the answers

    What is a major reason contributing to IT project failure?

    <p>Lack of customer involvement</p> Signup and view all the answers

    What percentage of software projects were categorized as successful according to the Standish Group in 2006?

    <p>35%</p> Signup and view all the answers

    Among IT projects that fail, what percentage is attributed to poor requirements management?

    <p>71%</p> Signup and view all the answers

    Which lab group primarily has Linus as the lab assistant?

    <p>TOUK18 G1</p> Signup and view all the answers

    What is indicated as a common risk in large IT projects?

    <p>High potential for cost and schedule overruns</p> Signup and view all the answers

    How often do project requirements change during development according to the course content?

    <p>Consistently</p> Signup and view all the answers

    What is stated as a statement related to that developing software is enjoyable?

    <p>Programming is fun, but developing quality software is hard.</p> Signup and view all the answers

    What is a consequence of misunderstanding during software development?

    <p>Unclear project requirements</p> Signup and view all the answers

    What is the main purpose of the analysis phase in the software development life cycle?

    <p>To find and identify the objects</p> Signup and view all the answers

    Which phase of the software development life cycle has the lowest cost to fix an error?

    <p>Requirements</p> Signup and view all the answers

    In the context of object-oriented design, what is the focus of the design phase?

    <p>Defining software objects and their interactions</p> Signup and view all the answers

    Which of the following best describes non-functional requirements?

    <p>They describe how a system should perform under certain conditions</p> Signup and view all the answers

    What is the primary purpose of the 'Main Success Scenario' in a fully dressed use case?

    <p>To describe a typical successful interaction</p> Signup and view all the answers

    Why is it important to capture requirements, despite the understanding that they might change?

    <p>To identify errors at the earliest stage</p> Signup and view all the answers

    Which section of a use case identifies what must be true at the start for the use case to commence?

    <p>Preconditions</p> Signup and view all the answers

    Which of the following is an example of a functional requirement in a hotel reservation system?

    <p>Reservations and cancellations</p> Signup and view all the answers

    Which of the following is NOT a common type of programming paradigm mentioned?

    <p>Synthetic</p> Signup and view all the answers

    What notation is used to indicate branching scenarios within a use case?

    <p>Numbers followed by letters</p> Signup and view all the answers

    What is the primary distinction between functional and non-functional requirements?

    <p>Functional requirements describe what the system does, while non-functional defines how it performs</p> Signup and view all the answers

    In the context of use cases, what does 'Technology and Data Variations List' refer to?

    <p>Varying input/output methods and data formats</p> Signup and view all the answers

    Which of the following best defines the term 'Scope' in a use case?

    <p>The system under design</p> Signup and view all the answers

    What does the 'Frequency of Occurrence' section in a use case influence?

    <p>Testing and timing of implementation</p> Signup and view all the answers

    What format emphasizes the interaction between actors and the system in use cases?

    <p>Two column format</p> Signup and view all the answers

    Why is it important to identify stakeholders and their interests in a use case?

    <p>To understand the motivations and needs related to the use case</p> Signup and view all the answers

    Study Notes

    Course Information

    • This course is about Object-Oriented Software Development
    • Two course variations:
      • TOUK18: Object-Oriented Software Development with Design Patterns
      • TOMK18: Object-Oriented Software Development
    • Lectures and lab sessions are used for teaching
    • Assessment: Written exam (4 credits) and Lab assignments (either 2 or 3.5 credits)
    • The written exam is digital and takes place in week 42, October 17th, 14:00-17:00
    • There are five Lab assignments
      • Lab 01: Use Cases (week 35-36)
      • Lab 02: A&D, UML (week 36-37)
      • Lab 03: Basics of Java (week 37-39)
      • Lab 04: Design in Java (week 38-40)
      • Lab 05: Design Patterns (week 40-42, TOUK18 only)
    • To pass a lab assignment, students must:
      • Give an oral presentation
      • Submit the work via Canvas
      • Wait for feedback
    • Collaboration is allowed, but students must submit individual work to avoid plagiarism
    • Lab instructions are available on Canvas, under the Modules/Labs section
    • Each lab has a soft deadline, but submissions can be made until the end of week 42

    Lab Groups

    • Students need to sign up for a lab group:
      • TOUK18:
        • G1: Wednesday 8.15-12.00, lab assistant Linus
        • G2: Wednesday 13.15-17.00, lab assistant Andreas
        • G3: Thursday 13.15-17.00, lab assistant Mohamed
      • TOMK18:
        • G1: Tuesday 13.15-17.00, lab assistant Linus
        • G2: Wednesday 13.15-17.00, lab assistant Andreas

    Course Evaluation

    • Course evaluation takes place at the end of the course, but feedback can be given throughout.
    • Last year's course evaluation was positive, and no major changes are planned.

    Software Development and Requirements

    • Developing quality software is challenging.
    • Research indicates that a significant percentage of software projects fail to meet requirements.
    • Between 35% and 58% of software projects failed in 2006.
    • Large IT projects overspend by 45% on average and deliver 56% lower value.
    • A major reason for project failure is poor Requirements Management.
    • Requirements change over time, posing difficulty in capturing requirements.

    Requirements Types:

    • Functional requirements: Describe interactions between the system and its environment.
    • Non-functional requirements: Describe constraints limiting choices in constructing a solution.

    Requirements Capture:

    • Early requirements analysis can be summarized in brief or casual formats.
    • Brief: One paragraph summary of the main success scenario.
    • Casual: Various scenarios, one paragraph each.
    • Fully Dressed: Detailed format with all steps and variations.

    Use Cases:

    • Fully Dressed:*
    • Use Case Section Comment
    • Use Case Name Start with a verb/action
    • Scope The system under design
    • Level Either ”user-goal” or ”subfunction”
    • Primary Actor Calls on the system to deliver its services
    • Stakeholders and Interests Who cares about this use case, and what do they want?
    • Preconditions What must be true on start, and is worth telling the reader?
    • Success Guarantee What must be true on successful completion, and is worth telling the reader?
    • Main Success Scenario A typical, unconditional happy path scenario of success
    • Extentions Alternate scenarios of success or failure
    • Special Requirements Related non-functional requirements
    • Technology and Data Variations List Varying I/O methods and data formats
    • Frequency of Occurrence Influences investigation, testing, and timing of implementation
    • Miscellaneous Such as ”open issues”

    Use Case Notation

    • Letters are used for extensions.
    • Main success scenario is denoted with numbers.
    • Extensions are denoted with letters.

    Use Case Branching:

    • Use Cases can branch to perform another use case, identified by underlining the branch.

    Use Case Two Column Format:

    • Emphasizes interaction between actors (left column) and the system (right column).

    Use Case Diagrams:

    • Use case diagrams can supplement text-based use cases.
    • Use Case Context Diagrams illustrate external actors and their interactions with the system.

    Writing Good Use Cases:

    • Essential Style: Keep the user interface out, focus on actor intent.
    • Concrete Style: Include the user interface.
    • Use essential style, concrete only in the late requirements phase.
    • Focus on WHAT the user puts in and gets out of the system, not HOW it is done.
    • Write tersely, avoiding articles whenever possible.
    • Write Blackbox use cases, focusing on the system’s responsibilities.
    • Take an actor and actor-goal perspective.

    Use Case Authors:

    • Use Cases are typically written by the development team, but user involvement is recommended.

    Importance of Use Cases:

    • Use Cases are popular due to their scalability in both detail and formality.
    • Applying UML and patterns, Chapter 1 & 6

    Final Note:

    • Have fun with lab 1!

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Related Documents

    Lecture01-OrgIntroUseCases.pdf

    Description

    Test your knowledge on Object-Oriented Software Development, including essential concepts and design patterns introduced in the course. This quiz covers lab assignments and assessment methods fundamental to your success in the class. Prepare to enhance your understanding and application of Java and UML principles.

    Use Quizgecko on...
    Browser
    Browser