Podcast
Questions and Answers
What is the primary focus when writing a Use Case?
What is the primary focus when writing a Use Case?
During the Point of Sale (POS) checkout process, what is the cashier responsible for after entering the item identifier?
During the Point of Sale (POS) checkout process, what is the cashier responsible for after entering the item identifier?
What type of approach is recommended for writing Use Cases during early requirements phase?
What type of approach is recommended for writing Use Cases during early requirements phase?
Who typically writes Use Cases?
Who typically writes Use Cases?
Signup and view all the answers
What strength makes Use Cases widely used for over 30 years?
What strength makes Use Cases widely used for over 30 years?
Signup and view all the answers
What is the primary teaching element employed in the course?
What is the primary teaching element employed in the course?
Signup and view all the answers
What is required to pass a lab assignment?
What is required to pass a lab assignment?
Signup and view all the answers
When will the digital written exam take place?
When will the digital written exam take place?
Signup and view all the answers
What is the consequence of missing the deadline for a lab submission?
What is the consequence of missing the deadline for a lab submission?
Signup and view all the answers
How many credits are assigned for the written exam in the TOMK18 course?
How many credits are assigned for the written exam in the TOMK18 course?
Signup and view all the answers
What is one of the rules regarding discussing lab assignments?
What is one of the rules regarding discussing lab assignments?
Signup and view all the answers
What is a suggested approach when using generated code?
What is a suggested approach when using generated code?
Signup and view all the answers
What grading system is used for lab assignments in the TOUK18 course?
What grading system is used for lab assignments in the TOUK18 course?
Signup and view all the answers
What is a major reason contributing to IT project failure?
What is a major reason contributing to IT project failure?
Signup and view all the answers
What percentage of software projects were categorized as successful according to the Standish Group in 2006?
What percentage of software projects were categorized as successful according to the Standish Group in 2006?
Signup and view all the answers
Among IT projects that fail, what percentage is attributed to poor requirements management?
Among IT projects that fail, what percentage is attributed to poor requirements management?
Signup and view all the answers
Which lab group primarily has Linus as the lab assistant?
Which lab group primarily has Linus as the lab assistant?
Signup and view all the answers
What is indicated as a common risk in large IT projects?
What is indicated as a common risk in large IT projects?
Signup and view all the answers
How often do project requirements change during development according to the course content?
How often do project requirements change during development according to the course content?
Signup and view all the answers
What is stated as a statement related to that developing software is enjoyable?
What is stated as a statement related to that developing software is enjoyable?
Signup and view all the answers
What is a consequence of misunderstanding during software development?
What is a consequence of misunderstanding during software development?
Signup and view all the answers
What is the main purpose of the analysis phase in the software development life cycle?
What is the main purpose of the analysis phase in the software development life cycle?
Signup and view all the answers
Which phase of the software development life cycle has the lowest cost to fix an error?
Which phase of the software development life cycle has the lowest cost to fix an error?
Signup and view all the answers
In the context of object-oriented design, what is the focus of the design phase?
In the context of object-oriented design, what is the focus of the design phase?
Signup and view all the answers
Which of the following best describes non-functional requirements?
Which of the following best describes non-functional requirements?
Signup and view all the answers
What is the primary purpose of the 'Main Success Scenario' in a fully dressed use case?
What is the primary purpose of the 'Main Success Scenario' in a fully dressed use case?
Signup and view all the answers
Why is it important to capture requirements, despite the understanding that they might change?
Why is it important to capture requirements, despite the understanding that they might change?
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?
Which section of a use case identifies what must be true at the start for the use case to commence?
Signup and view all the answers
Which of the following is an example of a functional requirement in a hotel reservation system?
Which of the following is an example of a functional requirement in a hotel reservation system?
Signup and view all the answers
Which of the following is NOT a common type of programming paradigm mentioned?
Which of the following is NOT a common type of programming paradigm mentioned?
Signup and view all the answers
What notation is used to indicate branching scenarios within a use case?
What notation is used to indicate branching scenarios within a use case?
Signup and view all the answers
What is the primary distinction between functional and non-functional requirements?
What is the primary distinction between functional and non-functional requirements?
Signup and view all the answers
In the context of use cases, what does 'Technology and Data Variations List' refer to?
In the context of use cases, what does 'Technology and Data Variations List' refer to?
Signup and view all the answers
Which of the following best defines the term 'Scope' in a use case?
Which of the following best defines the term 'Scope' in a use case?
Signup and view all the answers
What does the 'Frequency of Occurrence' section in a use case influence?
What does the 'Frequency of Occurrence' section in a use case influence?
Signup and view all the answers
What format emphasizes the interaction between actors and the system in use cases?
What format emphasizes the interaction between actors and the system in use cases?
Signup and view all the answers
Why is it important to identify stakeholders and their interests in a use case?
Why is it important to identify stakeholders and their interests in a use case?
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
- TOUK18:
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.
Recommended Reading:
- 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.
Related Documents
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.