Practice Midterm Exam: Software Engineering

Similar documents
Chapter 6, System Design Lecture 2

Object-Oriented Software Engineering Conquering Complex and Changing Systems. Chapter 6, System Design Lecture 1

Week 5 Creating a Calendar. About Tables. Making a Calendar From a Table Template. Week 5 Word 2010

Enterprise Architect basic usage

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 09/29/2015

Trash in the Dock. May 21, 2017, Beginners SIG The Dock (Part 3 of 3)

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802

Progress Report. Object-Oriented Software Development: Requirements elicitation (ch. 4) and analysis (ch. 5) Object-oriented software development

Windows XP Lab 2. Competencies

Week 4 Tute/Lab Entity-Relationship (ER) Model

Software Engineering Fall 2014

Final Exam. Final Exam Review. Ch 1: Introduction: Object-oriented analysis, design, implementation. Exam Format

MacAutomationTips.com Bakari Chavanu. Hazel: Your Automated Digital Assistant Working According to Rules You Set

Getting Started with Publisher 2013

Requirements Elicitation

How to set up an Amazon Work Profile for Windows 8

CS487 Midterm Exam Summer 2005

22/09/2012 INFO2110. Copyright Warning. Revision of class diagram. Overview. Purpose of class diagram. Generalization Relationship

IRIS Hosted Systems Apple Mac Installation Guide

Practical Session 2: Use Cases and a Requirements Model.

Chapter 5, Analysis: Object Modeling

Software Engineering Lab Manual

Communication System TIENET User Guide

Software Development Methodologies

My Blackboard: My Tools: Shortcuts: Calendar items are color-coded.

Articles... 3 Workflow Exercise One: Entry-Campaign-Exit... 4 Workflow Exercise Two: Entry-Wait-Campaign-Exit-Test... 8 Workflow Exercise Three (a):

Introduction to System Design

Software Engineering

Tonight s Agenda. CSC340: Requirements Engineering. Course Objectives. Requirements Engineering. Software Engineering. What is Software Engineering?

MTAT Software Engineering. Written Exam 17 January Start: 9:15 End: 11:45

SYLLABUS POSTGRADUATE TRAINING FOR NORDIC COMPUTER FORENSIC INVESTIGATORS. Module 3E Windows Forensics 10 ECTS

Customize the Navigation Pane

EDTE 330A/B. Educational Technology in the Classroom: Applications and Integrations

How to Keep ERD and Data Dictionary Synchronized? Written Date : January 20, 2014

PART 7. Getting Started with Excel

Lesson 06. Requirement Engineering Processes

TestAnyTime User Manual (Imaging) English Version

Computer Science (COSC) 2002 Computer Operating Systems (1.5 Units) CSU [formerly Computer Science 42E]

Object-Oriented Systems Analysis and Design Using UML

CPLP: Why Now? The Four E s for Getting Started!

Software Design Document (SDD) Template (summarized from IEEE STD 1016)

Functional Design of Web Applications. (partially, Chapter 7)

Microsoft Faculty Tutorial

Review. Designing Interactive Systems II. Review. Base Window System. Apps UITK BWS GEL. 4-Layer Model Graphics and Event Library BWS GEL

Microsoft Outlook 2011: Getting Started

MANAGE YOUR CONSTRUCTION21 COMMUNITY

Operating Systems: The Genie in the Computer. Chapter 6: Operating Systems: The Genie in the Computer. What is an operating system?

Introduction to Programming

CSE 308. UML Overview Use Case Diagrams. Reference. en.wikipedia.org/wiki/class_diagram. Robert Kelly, B. Bruegge,

Excel. Spreadsheet functions

University of Calgary Department of Electrical and Computer Engineering. SENG : Object Oriented Analysis and Design Behrouz Homayoun Far

Course Name: Computer Networks-1 Course Code: IT222

CS504-Softwere Engineering -1 Solved Objective Midterm Papers For Preparation of Midterm Exam

Introduction to Software Engineering: Analysis

Ch t 8 Chapter 8. System Models

14. The Tools And Materials Architectural Style and Pattern Language (TAM)

Software Testing. Software Testing. in the textbook. Chapter 8. Verification and Validation. Verification Techniques

1LIVE CHESS BOOK User Manual

Comp 310 Computer Systems and Organization

Topic : Object Oriented Design Principles

Sample Chapters. To learn more about this book, visit the detail page at: go.microsoft.com/fwlink/?linkid=192147

Beijing Jiaotong University CS-23: C++ Programming Summer, 2019 Course Syllabus

Software Engineering I (02161)

ITE 119 Information Literacy

How to make a Work Profile for Windows 10

Guide Campus Global. Participant profile. Barcelona,

Section 2. Slides. By the end of this Section you should be able to:

USE BUSINESS TECHNOLOGY (WINDOWS 7 AND OFFICE 2010)

Microsoft Project. Website:

Lecture 8 Requirements Engineering

Canvas Student Guide. The Office of Online Learning Massasoit Community College

Architecture and the UML

(a) Assuming the server is up, do stockholders receive price quotes within 3 seconds even if 200 stockholders request quotes simultaneously?

(Team Name) (Project Title) Software Design Document. Student Name (s):

Chapter 5, Analysis: Dynamic Modeling

CSC 210 COMPUTER SCIENCE II

CS 327E Lecture 8. Shirley Cohen. February 22, 2016

Student Guide. Document Version: This guide documents features available in NETLAB+ VE version and later.

Databases The McGraw-Hill Companies, Inc. All rights reserved.

16/06/56. Databases. Databases. Databases The McGraw-Hill Companies, Inc. All rights reserved.

Computer Essentials Session 1 Step-by-Step Guide

Version 1.1. COPYRIGHT 1999 Tufts University and Vernier Software. ISBN (Windows) ISBN (Macintosh)

Calendar Basics Outlook 2016 for Windows

Requirements Specification

QualiWare Lifecycle Manager. Starter course

Appendix A. Installing Word Setting the Word Options. Setting the AutoFormat Options. To complete this course, you will need to:

How to Draw UML Sequence Diagram? Written Date : March 16, 2016

PEACHTREE COMPLETE 2009 WORKSHOP 1 THE ATLAS COMPANY

Comparative analyses for the performance of Rational Rose and Visio in software engineering teaching

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 11/10/2015

VisualSP Help System 2013 Installation Procedure. Rehmani Consulting, Inc.

Software Engineering. Page 1. Objectives. Object-Behavioural Modelling. Analysis = Process + Models. Case Study: Event Identification

General Outlook Tips. Display Outlook Today. Change Outlook's Default Starting Location. Change Navigation Pane Options. Personalize the Address Book

PowerPoint 2003: Basic Instructor s Edition

Software Engineering (CSC 4350/6350) Rao Casturi

CSCU9T4: Managing Information

Requirements Gathering using Object- Oriented Models UML Class Diagram. Reference:

System Administration

MTAT Software Engineering. Written Exam 10 January Start: 9:15 End: 11:45

MS Word MS Outlook Level 1

Transcription:

Practice Midterm Exam: Software Engineering Prof. Bruegge WS 2001/2002 Out: December 13, 16:00, S1128 Due: December 14, 11:15, S1128 Last name First name Matriklnr. Hauptfach Semester Date of birth

1. Modeling with UML Hint: read the exercise completely before drawing your diagram. a) Draw a class diagram representing a book defined by the following statement: A book is composed of a number of parts, which in turn are composed of a number of chapters. Chapters are composed of sections. Focus only on classes and relationships. b) Add multiplicity to the class diagram. c) Extend the class diagram to include the following attributes: a book includes a publisher, publication date, and an ISBN a part includes a title and a number a chapter includes a title, a number, and an abstract a section includes a title and a number d) Note that the Part, Chapter, and Section classes all include a title and a number attribute. Add an abstract class and an inheritance relationship to factor out these two attributes into the abstract class.

2. Project communication You are a member of the user interface team. You are responsible for designing and implementing forms collecting information about users of the system (e.g., first name, last name, address, E-mail address, level of expertise). The information collected by these forms is stored by a storage subsystem and used by the reporting subsystem. You are not sure which fields of these forms are required information and which are optional. How do you find out?

3. Requirements elicitation a) Consider your watch as a system and set the time 2 minutes ahead. Write down each interaction between you and your watch as a scenario. Record all interactions, including any feedback the watch provides you. b) Consider the scenario you wrote in a). Identify the actor of the scenario. Next, write the corresponding use case SetTime. Use the template provided in the book. Include all flow of events, and include setting the time forward, backward, setting hours, minutes, and seconds.

4. Analysis Hint: read the exercise completely before drawing your diagram. Consider the object model in Figure 1: Year Month Week Day 1 * 1 * 1 * Figure 1 A naive model of the calendar (UML class diagram). a) Given your knowledge of the calendar, list all the problems with this model. Modify it to correct each of them. b) Using association multiplicity only, can you modify this object model such that a developer unfamiliar with the Gregorian calendar could deduce the number of days in each month? Identify additional classes if necessary.

5. Analysis II a) Consider a file system with a graphical user interface, such as Macintosh s Finder, Microsoft s Windows Explorer, or Linux s KDE. The following objects were identified from a use case describing how to copy a file from a floppy disk to a hard disk: File, Icon, TrashCan, Folder, Disk, Pointer. Specify which are entity objects, which are boundary objects, and which are control objects. b) Assuming the same file system as before, consider a scenario consisting of selecting a file on a floppy, dragging it to Folder and releasing the mouse. Identify and define at least one control object associated with this scenario. c) Arrange the objects listed in a) & b) horizontally on a sequence diagram, the boundary objects to the left, then the control object you identified, and finally, the entity objects. Draw the sequence of interactions resulting from dropping the file into a folder. For now, ignore the exceptional cases. d) Examining the sequence diagram produced c), identify the associations between these objects. e) Identify the attributes of each object that are relevant to this scenario (copying a file from a floppy disk to a hard disk). Also consider the exception cases There is already a file with that name in the folder and There is no more space on disk.

6. System Design a) Decomposing a system into subsystems reduces the complexity developers have to deal with by simplifying the parts and increasing their coherence. Decomposing a system into simpler parts usually results into increasing a different kind of complexity: Simpler parts also means a larger number of parts and interfaces. If coherence is the guiding principle driving developers to decompose a system into small parts, which competing principle drives them to keep the total number of parts small? b) In the lecture, we classified design goals into five categories: performance, dependability, cost, maintenance, and end user. Assign one or more categories to each of the following goals: Users must be given a feedback within 1 second after they issue any command. The TicketDistributor must be able to issue train tickets, even in the event of a network failure. The housing of the TicketDistributor must allow for new buttons to be installed in the event the number of different fares increases. The AutomatedTellerMachine must withstand dictionary attacks (i.e., users attempting to discover a identification number by systematic trial). The user interface of the system should prevent users from issuing commands in the wrong order.