1 / 0

SEng 5861: Software Architecture

SEng 5861: Software Architecture. Lecture 7 Dr. Michael Whalen Fall 2010. Topics for Today. Questions / Comments from Last Week Midterm review & expectations Complete functional view exercise Information view Midterm. Updates. Grades posted for Project Phase II

garth
Download Presentation

SEng 5861: Software Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SEng 5861: Software Architecture

    Lecture 7 Dr. Michael Whalen Fall 2010 SEng 5861 - Mike Whalen
  2. Topics for Today Questions / Comments from Last Week Midterm review & expectations Complete functional view exercise Information view Midterm SEng 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. SEng 5861 - Mike Whalen
  4. Midterm Review Your questions go here SEng 5861 - Mike Whalen
  5. Exercise: functional view of airport parking system SEng 5861 - Mike Whalen
  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 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. SEng 5861 - Mike Whalen
  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. SEng 5861 - Mike Whalen
  8. Some Use Cases SEng 5861 - Mike Whalen
  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? SEng 5861 - Mike Whalen
  10. Examples here SEng 5861 - Mike Whalen
  11. Information viewpoint SEng 5861 - Mike Whalen
  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 SEng 5861 - Mike Whalen
  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 SEng 5861 - Mike Whalen
  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? SEng 5861 - Mike Whalen
  15. Data Ownership Grids Mapping data ownership to systems Relationships: Owner, Creator, Updater, Deleter, Reader, Copy, Validator Shows possible conflicts in data ownership Catalog and Purchasing both may modify product SEng 5861 - Mike Whalen
  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 SEng 5861 - Mike Whalen
  17. Information Lifecycle Models Possible to represent as UML Statecharts or Entity Life Histories SEng 5861 - Mike Whalen Slide from: Eoin Woods, Viewpoints and Perspectives, SATURN 2008 (www.eoinwoods.info)
  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 SEng 5861 - Mike Whalen
  19. What Have We Learned? A bit about the information viewpoint Data quality, lifecycle issues Security, regulation, and data retention SEng 5861 - Mike Whalen
  20. MIDterm SEng 5861 - Mike Whalen
  21. Clarifications Question 3: Do one or two scenarios; don’t 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 SEng 5861 - Mike Whalen
More Related