User Tools

Site Tools


faq

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
faq [2021/04/03 20:30] jxufaq [2021/04/07 19:23] jxu
Line 261: Line 261:
 **Answer to Question 26**: No. There is no need for an example for Assignment 3. **Answer to Question 26**: No. There is no need for an example for Assignment 3.
  
 +**Question 27**. What would be a good way to approach and think about Assignment 3?
  
 +**Answer to Question 27**:  Imagine that a software company working for a consortium of automotive industries is anticipating that there is going to be an explosion in demand for high performance, robust embedded automotive information systems, and has hence decided that they need a basic software system on which they can further build a wide range of high performance, robust embedded automotive information systems applications. For this reason, that software company has asked several software development teams, including your group, to each provide two basic software systems with significantly different designs that allows any user, or any higher level automotive information system application, to perform search, insertion, and deletion operations on key-value pairs (k, v), where k is the key and v is the value, which will serve as a foundation for further building a wide range of high performance, robust embedded automotive information systems applications, and that the software company will hire the software development team with the best overall design, analysis, implementation, testing, and documentation to continue to work on the project for the company.
 +
 +Since the software company working for the consortium of automotive industries does not know the exact details of what kind of high performance, robust embedded automotive information systems applications will be built using the two basic software systems with significantly different designs that allows any user, or any higher level automotive information system application, to perform search, insertion, and deletion operations; the only system characteristics, requirements, and constraints that have been specified by the software company are those specified in Section 1.1. of Assignment 3, that is:
 +
 +“(a) Each entry in the system consists of a key-value pair (k, v), where k is the key and v is the value. 
 +
 +(b) The key for each entry is unique, that is, two different entries will not have a same key. The key for each entry is a character string. No advance knowledge can be assumed about other characteristics of the keys. 
 +
 +
 +(c) The number of entries in the system can be very large, but the system can still fit into main memory.
 +
 + 
 +(d) Search, insertion and deletion operations on the entries in the system are equally likely.
 +
 +(e) The primary system performance criteria is speed, that is, under normal circumstances the search, insertion, and deletion operations should be as fast as possible. However, since this is an embedded automotive information system, the system is also expected to be robust in the sense that one should still be able to guarantee good, predictable, and verifiable performance of the system even under worst-case scenarios, possibly even including when under malicious attacks. 
 +…”
 +
 +**Question 28**:  Do we assume the key is always enter as a string or do we assume the key can be defined under any object?
 +
 +**Answer to Question 28**: Assignment 3 requires you to provide two basic software systems with significantly different designs that allows any user, or any higher level automotive information system application, to perform search, insertion, and deletion operations of key-value pair (k, v), where k is the key and v is the value, and the key is a character string.
  
faq.txt · Last modified: 2021/04/26 22:20 by jxu