Presentation is loading. Please wait.

Presentation is loading. Please wait.

SEng 5861: Software Architecture Lecture 7 Dr. Michael Whalen Fall 2010 10/14/20101SEng 5861 - Mike Whalen.

Similar presentations

Presentation on theme: "SEng 5861: Software Architecture Lecture 7 Dr. Michael Whalen Fall 2010 10/14/20101SEng 5861 - Mike Whalen."— Presentation transcript:

1 SEng 5861: Software Architecture Lecture 7 Dr. Michael Whalen Fall 2010 10/14/20101SEng 5861 - Mike Whalen

2 Topics for Today Questions / Comments from Last Week Midterm review & expectations Complete functional view exercise Information view Midterm 10/14/20102SEng 5861 - Mike Whalen

3 Updates Grades posted for Project Phase II Nice job, folks! You obviously worked hard at them. For Phase III, I have a document template from R&W (in Word and.pdf) to use It will be posted to the class web page today Nothing radical; just outlines the sections of the document described in R&W Ch. 13. 10/14/20103SEng 5861 - Mike Whalen

4 Midterm Review Your questions go here 10/14/2010SEng 5861 - Mike Whalen4


6 Airport Parking Controller You are asked to build the automated parking system at MSP airport Support ePark: Also support ticketed parking: user receives a ticket and pays either by credit card or cash 9/11/2010SEng 5861 - Mike Whalen6 Simply insert your credit or debit card into the card reader at the ramp entrance. This will record the time you entered airport parking. Use the same credit or debit card to pay at an ePark® exit lane. The system is fully automated; there is no waiting in line for a cashier.

7 Airport Parking Controller Basic functionality: users should be able to: Enter the parking lot if space is available Either via ticket or credit card Exit the parking lot at any time Pay either via cash or credit card But there is much more to it! What if user uses different credit card to enter/exit? What if there are insufficient funds? What if I am unable to reach VISA server? Etc. etc. etc. 9/11/2010SEng 5861 - Mike Whalen7

8 Some Use Cases 10/14/2010SEng 5861 - Mike Whalen8

9 Airport Controller Create the top-level component model Use a UML diagram model First describe components Then describe interfaces Does this app need to be distributed? If so, would you use MOM, RPC, or both? 10/14/2010SEng 5861 - Mike Whalen9

10 Examples here 10/14/2010SEng 5861 - Mike Whalen10

11 INFORMATION VIEWPOINT 10/14/2010SEng 5861 - Mike Whalen11

12 Information Viewpoint How do we organize (and manage) large volumes of data Static views: Entity Relationship Diagram You know these from SEng5702! Lifecycle Quality Accuracy Timeliness Ownership 10/14/2010SEng 5861 - Mike Whalen12

13 Information Flow Modeling Where is data created and destroyed? How do data items change as they flow through the system? Concern can also be addressed (somewhat) using scenarios, but that is not their primary focus 10/14/2010SEng 5861 - Mike Whalen13

14 Data Ownership Is data item owned by exactly one process? If multiple copies exist, Is one the master? Is data synchronized? How often? What are consequences of stale data? 10/14/2010SEng 5861 - Mike Whalen14

15 Data Ownership Grids 10/14/2010SEng 5861 - Mike Whalen15 Mapping data ownership to systems Relationships: Owner, Creator, Updater, Deleter, Reader, Copy, Validator Shows possible conflicts in data ownership SystemCustomerProductOrderFulfillment CatalogNoneOwnerNone PurchasingReaderUpdaterOwnerCreator DeliveryCopyReader Updater CustomerOwnerReader Catalog and Purchasing both may modify product

16 Data Lifecycle and Retention Data lifecycle: what is the process for creating, modifying, archiving, and deleting data For many industries, lifecycle may be regulated Financial transactions must be stored for NNN years Patient-identifying data for a study must be disposed of within XXX days. Archiving data Cannot usually store data on disk indefinitely Must be archived to more permanent storange This may affect availability Induces requirements on disk size 10/14/2010SEng 5861 - Mike Whalen16

17 Information Lifecycle Models Possible to represent as UML Statecharts or Entity Life Histories 9/11/2010SEng 5861 - Mike Whalen17 Slide from: Eoin Woods, Viewpoints and Perspectives, SATURN 2008 (

18 Pitfalls Data incompatibilities Units, representation (e.g. endianness), text format (ASCII vs. Unicode) Poor data quality Assess risk! How do we know data is bad? Scenarios for bad user input What are fixup procedures? Manual? Automated? Information degradation Inadequate capacity What is expected data load? What are amounts of data that can be supported by OS, Database Time to load, move, batch data 10/14/2010SEng 5861 - Mike Whalen18

19 What Have We Learned? A bit about the information viewpoint Data quality, lifecycle issues Security, regulation, and data retention 10/14/2010SEng 5861 - Mike Whalen19

20 MIDTERM 10/14/2010SEng 5861 - Mike Whalen20

21 Clarifications Question 3: Do one or two scenarios; dont kill yourself These are things that the site should do; they may or may not do it already Things that the site already does are o.k. to use Question 5: context diagram. hypothetical means that you take the internal subsystems from question 4 and come up with a handful of external things that would communicate with them. All of the internal subsystems go in a rover system in the middle of the diagram 10/14/2010SEng 5861 - Mike Whalen21

Download ppt "SEng 5861: Software Architecture Lecture 7 Dr. Michael Whalen Fall 2010 10/14/20101SEng 5861 - Mike Whalen."

Similar presentations

Ads by Google