|
1
|
|
|
2
|
|
|
3
|
- Cohesion
- Coupling
- Information hiding
- Encapsulation
|
|
4
|
- UML provides multiple perspectives for describing the software.
- Static – shows classes
- class diagram
- concepts
- relationships
- Dynamic – shows objects/components
- state diagram
- activity diagram
|
|
5
|
|
|
6
|
|
|
7
|
|
|
8
|
|
|
9
|
|
|
10
|
- Sequential
- one thing at a time
- Concurrent
- appears that multiple things happen but really only one at a time
- Parallel
- multiple things really do happen at a time
|
|
11
|
- If two different entities access the same resource does the order in
which they access the resource change the result?
|
|
12
|
|
|
13
|
|
|
14
|
|
|
15
|
- Multiple independent sources of stimulus
- people
- hardware
- Multiple modules with no interdependence
|
|
16
|
- Availability of hardware to implement concurrency
|
|
17
|
|
|
18
|
- The goal is to have sufficient semantics to fully describe a system.
|
|
19
|
- Design a “to do list” program that can
- List tasks by time and date
- Allow addition, deletion, and modification of tasks
- Allow user to specify that a task is to be repeated. Daily, weekly,
monthly
- Print a daily schedule
- Allow multiple users to access the same list from anywhere
- Criteria: use as many design patterns as possible; appropriateness of
chosen architecture; completeness of the design document; clarity of
description
- Conditions: team of 2; due October 26th by 9 am via email; 4
pts
|