{"id":58,"date":"2019-03-28T11:26:05","date_gmt":"2019-03-28T15:26:05","guid":{"rendered":"https:\/\/sites.bu.edu\/braude\/?page_id=58"},"modified":"2019-03-28T11:40:41","modified_gmt":"2019-03-28T15:40:41","slug":"met-cs-770-object-oriented-analysis-design","status":"publish","type":"page","link":"https:\/\/sites.bu.edu\/braude\/courses\/met-cs-770-object-oriented-analysis-design\/","title":{"rendered":"MET CS 770 Object-Oriented Analysis &#038; Design"},"content":{"rendered":"<p>Last updated: November 13, 2002 Recent updates are often in red.<\/p>\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td width=\"323\" valign=\"top\">Contacting Eric Braude changed if this is red<\/td>\n<td width=\"331\" valign=\"top\">Materials changed if this is red<\/td>\n<\/tr>\n<tr>\n<td width=\"323\" valign=\"top\">Forums changed if this is red<\/td>\n<td width=\"331\" valign=\"top\">Overview changed if this is red<\/td>\n<\/tr>\n<tr>\n<td width=\"323\" valign=\"top\">Grading changed if this is red<\/td>\n<td width=\"331\" valign=\"top\">Project Organization changed if this is red<\/td>\n<\/tr>\n<tr>\n<td width=\"323\" valign=\"top\">Homework and Due Dates changed if this is red \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Phase 3<\/td>\n<td width=\"331\" valign=\"top\">Required Background changed if this is red<\/td>\n<\/tr>\n<tr>\n<td width=\"323\" valign=\"top\">Learning Objectives changed if this is red<\/td>\n<td width=\"331\" valign=\"top\">Syllabus and Dates for Classes changed if this is red<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Overview<\/h2>\n<p>A major engineering problem today is the predictable development of reliable software-intensive systems. The object-oriented paradigm is an important part of such development.<\/p>\n<p>Object-oriented methods can be divided into <em>languages<\/em>, <em>distribution<\/em>, and <em>analysis and design<\/em>. There change in the <em>language<\/em> category, particularly Java and C#. <em>Distribution<\/em> includes the use of vendor libraries of classes and also distributed objects as specified by the Object Management Group etc.\u00a0 Basic to the entire enterprise, however, are <em>analysis and design<\/em>, which has remained remarkable stable for years.<em> Object-Oriented Analysis and Design <\/em>includes the overall goals of the object paradigm, the selection of classes, the relationships among them, and their utilization to implement systems.<\/p>\n<h2>Required Background<\/h2>\n<p>A knowledge of C++ or Java (MET CS 565) and software engineering methods (MET CS 673) are required.\u00a0\u00a0 It is preferable to have taken Design Patterns (MET CS 665).<\/p>\n<h2>Materials and references<\/h2>\n<p>The recommended textbook is &#8220;Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design, and the Unified Process &#8221; by Larman (Prentice Hall) 2nd edition, Published July 2001, 627 pages, ISBN 0130925691.\u00a0 This is the first time that this instructor has used this book, and it is not clear how much the book will be used.<\/p>\n<p>The instructor will provide notes for all classes.<\/p>\n<p><span style=\"text-decoration: underline;\">Other references:<\/span><\/p>\n<ul>\n<li><em>The Unified Modeling Language User Guide<\/em> by Booch et al (Prentice Hall) ISBN0-201-57168-4<\/li>\n<li><em>The Unified Modeling Language Reference Manual <\/em>James Rumbaugh, Ivar Jacobson, Grady Booch Addison-Wesley Pub Co; ISBN: 020130998X<\/li>\n<li><em>Design Patterns <\/em>by Gamma et al<\/li>\n<li><em>Object-Oriented Software Engineering<\/em> by I Jacobson<\/li>\n<li><em>Object-Oriented Analysis &amp; Design <\/em>by G. Booch<\/li>\n<li><em>Modeling the world in data<\/em> by S. Schlaer and S. Mellor<\/li>\n<li><em>Modeling the world in states<\/em> by S. Schlaer and S. Mellor<\/li>\n<li><em>The Unified Method<\/em> draft www.rational.com<\/li>\n<li><em>Object-oriented Analysis<\/em> by P. Coad and E. Yourdon<\/li>\n<li><em>Object-oriented Design<\/em> by P. Coad and E. Yourdon<\/li>\n<li><em>Object-oriented Programming<\/em> by P. Coad and A Nicola<\/li>\n<li><em>Software Engineering: An Object-Oriented Perspective <\/em> by Eric Braude<\/li>\n<\/ul>\n<h2>Learning Objectives<\/h2>\n<p>Students will be able to &#8230;<\/p>\n<ul>\n<li>&#8230; analyze problems from an object perspective<\/li>\n<li>&#8230; create OO designs which are ready for coding<\/li>\n<li>&#8230; implement a pilot OO project<\/li>\n<\/ul>\n<h2>Grading<\/h2>\n<p>The course will consist of homework and a project, weighted as follows:<\/p>\n<p>1.\u00a0\u00a0\u00a0\u00a0\u00a0 Homework:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 30%<\/p>\n<p>2.\u00a0\u00a0\u00a0\u00a0\u00a0 Project:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 70%<\/p>\n<p>There are three phases for the project, graded as follows:<\/p>\n<ul>\n<li>phase 1 (problem statement): \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 1\/9<\/li>\n<li>phase 2 (analysis): \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2\/9<\/li>\n<li>phase 3 (design): \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 1\/3<\/li>\n<li>phase 4 (implementation and critical review): 1\/3<\/li>\n<\/ul>\n<p>Parts are evaluated equally unless otherwise stated.<\/p>\n<p>Late homework is not accepted unless there is a reason why it was <em>impossible<\/em> for you. If there is such an impossibility, the work will be graded on a pass\/fail basis.<\/p>\n<h2>Project Organization<\/h2>\n<p>You will be required to submit an analyzed, designed and implemented project according to the deadlines shown in the schedule. Detailed requirements will follow.<\/p>\n<p>With the instructor\u2019s permission, it may be possible to substitute all or part of the project with an investigation of tools for OOA&amp;D such as Rational Rose or Together.\u00a0 This will require a detailed evaluation and an investigation of how these tools are being used extensively in a particular company.<\/p>\n<p>Teams two are permitted, and will be evaluated at a higher standard. All members must know all parts.<\/p>\n<p>You will be required to give a presentation on at least two of the phases in your project.<\/p>\n<h2>Syllabus:<\/h2>\n<p>This syllabus is subject to about 15% modification.<\/p>\n<p>The order of topics will be driven by the notes, which the instructor will hand out, not by the textbook. The textbook will serve as background and reference.<\/p>\n<table border=\"1\" cellspacing=\"1\" cellpadding=\"0\" width=\"559\">\n<tbody>\n<tr>\n<td width=\"8%\"><span style=\"text-decoration: underline;\">Wk.<\/span><\/td>\n<td width=\"11%\"><span style=\"text-decoration: underline;\">Date<\/span><\/td>\n<td width=\"48%\"><span style=\"text-decoration: underline;\">Topic<\/span><\/td>\n<td width=\"15%\"><span style=\"text-decoration: underline;\">Text<\/span><\/p>\n<p><span style=\"text-decoration: underline;\">chapters<\/span><\/td>\n<td width=\"15%\"><span style=\"text-decoration: underline;\">Project<\/span><\/p>\n<p><span style=\"text-decoration: underline;\">Times are approximate.\u00a0 See \u201cdate homework due\u201d section for final dates<\/span><\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">1<\/td>\n<td width=\"11%\">9\/3<\/td>\n<td width=\"48%\">\n<ul>\n<li>Review Syllabus<\/li>\n<li>Review Software Development Process<\/li>\n<\/ul>\n<\/td>\n<td width=\"15%\">Notes 0-1<\/td>\n<td width=\"15%\">Phase 1 assigned<\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">2<\/td>\n<td width=\"11%\">9\/10<\/td>\n<td width=\"48%\">\n<ul>\n<li>Introduction, Overview, and Goals of Design<\/li>\n<li>UML as required<\/li>\n<li>Extreme programming and refactoring<\/li>\n<\/ul>\n<\/td>\n<td width=\"15%\">Notes 1-3<\/td>\n<td width=\"15%\"><\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">3<\/td>\n<td width=\"11%\">9\/17<\/td>\n<td width=\"48%\">\n<ul>\n<li>Requirements I: Use Cases<\/li>\n<\/ul>\n<\/td>\n<td width=\"15%\">Notes 13 part 1<\/td>\n<td width=\"15%\">Presentations;<\/p>\n<p>Assign phase 2<\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">4<\/td>\n<td width=\"11%\">9\/24<\/td>\n<td width=\"48%\">\n<ul>\n<li>Requirements II: Sequence Diagrams<\/li>\n<\/ul>\n<\/td>\n<td width=\"15%\">Notes 13 part 2<\/td>\n<td width=\"15%\">Phase 1 due;<\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">5<\/td>\n<td width=\"11%\">10\/1<\/td>\n<td width=\"48%\">\n<ul>\n<li>Requirements III:\u00a0 Completing Domain Classes<\/li>\n<li>Writing Detailed Requirements<\/li>\n<li>Review Student Designs<\/li>\n<\/ul>\n<\/td>\n<td width=\"15%\">Notes 13 part 3<\/p>\n<p>Larman 10<\/td>\n<td width=\"15%\"><\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">6<\/td>\n<td width=\"11%\">10\/8<\/td>\n<td width=\"48%\">\n<ul>\n<li>Software Architectures<\/li>\n<\/ul>\n<\/td>\n<td width=\"15%\">Notes 14 part 1<\/td>\n<td width=\"15%\">Assign phase 3<\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">7<\/td>\n<td width=\"11%\">10\/22<\/td>\n<td width=\"48%\">To be determined<\/td>\n<td width=\"15%\"><\/td>\n<td width=\"15%\">Presentations; Phase 2 due;<\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">8<\/td>\n<td width=\"11%\">10\/29<\/td>\n<td width=\"48%\">\n<ul>\n<li>Review Design Patterns as required<\/li>\n<li>Discussion of Tools<\/li>\n<li>Review Student Designs<\/li>\n<\/ul>\n<\/td>\n<td width=\"15%\">Notes 4-6<\/td>\n<td width=\"15%\"><\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">9<\/td>\n<td width=\"11%\">11\/5<\/td>\n<td width=\"48%\">\n<ul>\n<li>Frameworks<\/li>\n<li>Review Student Designs<\/li>\n<\/ul>\n<\/td>\n<td width=\"15%\"><\/td>\n<td width=\"15%\">Presentations on architectures<\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">10<\/td>\n<td width=\"11%\">11\/12<\/td>\n<td width=\"48%\">\n<ul>\n<li>Design Topics<\/li>\n<li>Review Student Designs<\/li>\n<\/ul>\n<\/td>\n<td width=\"15%\">Notes 14 part 2<\/td>\n<td width=\"15%\">Assign phase 4<\/p>\n<p>Phase 3 due<\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">11<\/td>\n<td width=\"11%\">11\/19<\/td>\n<td width=\"48%\">\n<ul>\n<li>Review Student Designs<\/li>\n<\/ul>\n<\/td>\n<td width=\"15%\"><\/td>\n<td width=\"15%\">Presentations on detailed designs<\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">12<\/td>\n<td width=\"11%\">11\/26<\/td>\n<td width=\"48%\">\n<ul>\n<li>Detailed Design<\/li>\n<li>Review Student Designs<\/li>\n<\/ul>\n<\/td>\n<td width=\"15%\"><\/td>\n<td width=\"15%\">Presentations<\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">13<\/td>\n<td width=\"11%\">12\/3<\/td>\n<td width=\"48%\">\n<ul>\n<li>Implementing OO designs<\/li>\n<li>Shlaer-Mellor<\/li>\n<\/ul>\n<\/td>\n<td width=\"15%\"><\/td>\n<td width=\"15%\">Presentation of results (1 of 2)<\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">14<\/td>\n<td width=\"11%\">12\/10<\/td>\n<td width=\"48%\">\n<ul>\n<li>Presentations on Finished Applications<\/li>\n<\/ul>\n<\/td>\n<td width=\"15%\"><\/td>\n<td width=\"15%\">Phase 4 due Presentation of results (2 of 2)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<ul>\n<li>Notes are from <em>Software Design<\/em> (Braude, to be published by Wiley in March 2002)<\/li>\n<li><em>** <\/em>Applying UML and Patterns: \u2026 (Larman)<\/li>\n<\/ul>\n<p><strong>Dates Homework is due <\/strong><\/p>\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td width=\"50\">Num-ber<\/td>\n<td width=\"576\">Name<\/td>\n<td width=\"55\">Due date<\/td>\n<\/tr>\n<tr>\n<td width=\"50\"><\/td>\n<td width=\"576\">Project phase 1<\/td>\n<td width=\"55\">9\/24<\/td>\n<\/tr>\n<tr>\n<td width=\"50\">1<\/td>\n<td width=\"576\">\u201cDesign Issues\u201d<\/td>\n<td width=\"55\">9\/17<\/td>\n<\/tr>\n<tr>\n<td width=\"50\">1<\/td>\n<td width=\"576\">3.4 (Pass Fail)<\/td>\n<td width=\"55\">9\/17<\/td>\n<\/tr>\n<tr>\n<td width=\"50\"><\/td>\n<td width=\"576\"><span style=\"text-decoration: underline;\">Project phase 2<\/span>: (10\/2\/2002<\/p>\n<p>)<\/p>\n<p>1.Attach first a copy of your phase 1.\u00a0 Respond specifically to whatever comments I may have made on your phase 1.\u00a0\u00a0 You can write these directly on the copy.<\/p>\n<p>2.<\/p>\n<p>Show the sequence diagrams for at least the two use cases you have introduced.\u00a0 Key them to the use case steps, which you should number.3.List requirements by \u201cdomain class\u201d paragraphs, including<\/p>\n<p>&#8212; The testable functionality that the application will <em>definitely<\/em> accomplish<\/p>\n<p>&#8211;What you <em>would like to <\/em>have the application accomplish if time permits<\/p>\n<p><em> Criterion: <em>a. <\/em><em> Requirements clearly written. (A = very clear description of application\u2019s goals; no detail omitted)<\/em><\/em><\/p>\n<p><em> <\/em><em> <\/em><\/p>\n<p><em> <\/em> <em> <\/em><em>4.<\/em><em>Provide a class diagram for your project consisting of all of the domain classes as well as the domain packages that you will use.<\/em><\/p>\n<p><em> <\/em><em> <\/em><\/p>\n<p><em> <\/em> <em> <\/em><em><em> Criteria: <\/em><\/em><\/p>\n<p><em><em> <\/em><\/em><em><em><em> b. <em> <span style=\"text-decoration: line-through;\">Clarity and completeness<\/span> Sufficiency of key classes for committed requirements and use cases (A = very clear class meanings; no domain class missing <span style=\"text-decoration: line-through;\">no other domain classes required<\/span>) <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em> <\/em><\/em><\/em><em><em><em><em> g<em>. Economy (A = no redundancy at all in the class model)<\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em><em> <\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>Here are some typical improvements.<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em><strong><span style=\"text-decoration: underline;\">M<\/span><\/strong>ost room for improvement<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>1.\u00a0\u00a0\u00a0\u00a0\u00a0 Make your <span style=\"text-decoration: underline;\">domain names specific<\/span> to your application; e.g., <em>PetStoreTransaction, FootballGame, FootballTeam<\/em> rather than <em>Transaction<\/em> or <em>Game<\/em> or <em>Team<\/em>. <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>2.\u00a0\u00a0\u00a0\u00a0\u00a0 Use the <span style=\"text-decoration: underline;\">\u201centities\u201d section<\/span> correctly.\u00a0 This applies when there are specific entities that the application is required to have. It does not include entities that will be created at runtime that you can\u2019t specify entirely at requirements time.<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>3.\u00a0\u00a0\u00a0\u00a0\u00a0 Many internal classes have <span style=\"text-decoration: underline;\">corresponding GUI classes<\/span>.\u00a0 For example, <em>PetStoreAccount<\/em> entities may get their data from a <em>PetStoreAccountGUI<\/em> entity.\u00a0 Specify the latter in its own category rather than under <em>PetStoreAccount<\/em>.<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>4.\u00a0\u00a0\u00a0\u00a0\u00a0 In your requirements, <span style=\"text-decoration: underline;\">distinguish between <\/span>the<span style=\"text-decoration: underline;\"> initiator and <\/span>the<span style=\"text-decoration: underline;\"> substance<\/span> of functionality. <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>For example, under \u201cCourses\u201d a functionality might be \u201c12.1.5 The application shall be able to display the catalog description of each course in the following format \u2026\u201d\u00a0 (Corresponds to class <em>Course<\/em>).\u00a0 Under the \u201cCourse GUI\u201d paragraph an event might be \u201cWhen the <em>display course<\/em> button is pressed, the functionality described in section 12.1.5 is initated.\u201d\u00a0 Under the \u201cStudent GUI\u201d paragraph an event might be \u201cWhen the <em>show course<\/em> button is pressed, the functionality described in section 12.1.5 is initated.\u201d Etc.<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>Do <em>not<\/em> say \u201c12.1.5 When the <em>display course<\/em> button is pressed on the Course GUI, the application can display the catalog description of each course in the following format \u2026\u201d\u00a0 Otherwise you will have a maintenance nightmare and a poor mapping to the design and implementation.<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>5. <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em><strong><span style=\"text-decoration: underline;\">R<\/span><\/strong>oom for improvement<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em><strong>1. <\/strong>Most<strong> <\/strong><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em><strong>2. <\/strong><strong> <\/strong><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em><strong>3. <\/strong><strong> <\/strong><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em><strong>4. <\/strong><strong> <\/strong><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em><strong>5. <\/strong> <strong> <\/strong><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em><strong>6.<\/strong><strong> <\/strong><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em><strong>7.<\/strong><strong> <\/strong><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>objects are not <span style=\"text-decoration: underline;\">sensitive to events<\/span> unless they are GUI objects.\u00a0 Buttons are examples.\u00a0 Many objects have functionality that may be <em>invoked as a result<\/em> of an event on an<strong> <\/strong><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>other object.\u00a0 For example, a customer\u2019s information may be displayed when the button is clicked.\u00a0 But \u201cdisplay\u201d is a function of <em>Customer<\/em>: Any one of clients can invoke it, some event-sensitive and others not.\u00a0 The object with (direct) event reaction is the button, not the customer.<strong> <\/strong><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em> <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>2. <\/em><\/em><\/em><\/em><em><em><em><em>In your requirements document, don\u2019t say \u201cThe customer shall include a name \u2026\u201d (which is strange English).\u00a0 Instead: \u201cThe application shall maintain the name of customers \u2026.\u201d<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>3. <\/em><\/em><\/em><\/em><em><em><em><em><span style=\"text-decoration: underline;\">Distinguish between objects and object aggregates<\/span>.\u00a0 For example, you could have a \u201cCustomers\u201d requirements paragraph with functionality such as \u201cApp shall be able to send a customer profile to the central database.\u201d\u00a0 This will correspond to a class <em>Customer<\/em>.\u00a0 You could also have a \u201cCustomer List\u201d\u00a0 paragraph with functionality such as \u201cIt shall be possible to add new customers \u2026\u201d\u00a0 This will correspond to a class such as <em>CustomerList<\/em>.<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>4. <\/em><\/em><\/em><\/em><em><em><em><em><span style=\"text-decoration: underline;\">Don\u2019t waste words<\/span>. In particular, give a sentence or two under each paragraph that adds value.<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>NOT: <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>1.4 Customers<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>This section describes the requirements for customers.<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>BUT<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>1.4 Customers<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em>The application shall track the customers of the video store as follows. \u2026<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em> <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em><strong>1.<\/strong><strong> <\/strong><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em> <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em> <em><em><em><em> <\/em><\/em><\/em><\/em><em><em><em><em> <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><\/td>\n<td width=\"55\">10\/22<\/td>\n<\/tr>\n<tr>\n<td width=\"50\">3<\/td>\n<td width=\"576\">Clown problem 10\/9\/02<\/p>\n<p>Draw a class model for an application for drawing human figures.\u00a0 The picture shown is a typical product of the application.\u00a0 The figures are <em>always<\/em> neck-upward; mouths are <em>always<\/em> lines, necks <em>always<\/em> rectangles, etc. \u2013 the shapes that appear in the figure.\u00a0 Assume that the business will never change &#8212; but we want to be able to easily upgrade the shop\u2019s capability within these constraints (e.g., draw necks with various colors, new kinds of border lines).\u00a0 The class model should make figure drawing convenient (e.g., allowing the retrieval of previously constructed figure parts). Show attributes or operations whenever they clarify your solution.\u00a0 Include useful abstractions (but to extend the current business).<\/p>\n<p>There is no requirement to take into account the GUI for the application (icons, menu\u2019s etc.)<\/p>\n<p><strong> Here is a scenario: <strong> <\/strong><\/strong><\/p>\n<p><strong> <\/strong><strong><strong><span style=\"text-decoration: underline;\"> The user<strong> &#8230; pulls onto the monitor \u201cabeLincolnFace14\u201d (which excludes the ears and neck) <\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"> <\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong> &#8230; adds \u201cear123\u201d on the left by dragging to its vicinity and releasing <\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"><strong> <\/strong><\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"> The application<strong> places ear123 in a correct position<\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"> <\/span><\/strong><\/strong><\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"> The user<strong> invokes the \u201ccomplete with suitable parts\u201d command.<\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"> <\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"> The application<strong> <\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"> <\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong> \u2026 completes the figure with a neck and hat that it considers most suitable. <\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong> <\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong> &#8230; creates an ear on the right, complete with matching position, interior texture and color, and styles of border lines <\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong> <\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em> Criteria: <strong><em> <\/em><\/strong><strong><em>a<\/em><\/strong><strong><em>. completeness relative to requirements (A = sufficient classes for requirements, including appropriate generalizations) <\/em><\/strong><strong><em> <\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em> <\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em><strong><em> b<strong><em>. economy of classes (A = no more than necessary for requirements)<\/em><\/strong><\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em><strong><em> <\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em><strong><em><strong><em> <\/em><\/strong><\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em><strong><em> <\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em><strong><em> <\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em><strong><em> <\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em><strong><em> <\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em><strong><em> <\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em><strong><em> <\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em><strong><em> <\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em><strong><em> <\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em><strong><em> <\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><\/p>\n<p><strong><strong><span style=\"text-decoration: underline;\"><strong><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><span style=\"text-decoration: underline;\"><strong><strong><strong><em><strong><em> <\/em><\/strong><\/em><\/strong><\/strong><\/strong><\/span><\/strong><\/span><\/strong><\/span><\/strong><\/strong><\/span><\/strong><\/strong><\/td>\n<td width=\"55\">10\/29<\/td>\n<\/tr>\n<tr>\n<td width=\"50\">4<\/td>\n<td width=\"576\">14.1 \u2013 14.6<\/td>\n<td width=\"55\">11\/5<\/td>\n<\/tr>\n<tr>\n<td width=\"50\"><\/td>\n<td width=\"576\">see more below<\/td>\n<td width=\"55\">see below<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"text-decoration: underline;\">Project Phase 3<\/span><span style=\"text-decoration: underline;\">:<\/span> Due 11\/12<\/p>\n<p>1.\u00a0 Attach a copy of your phase 2 as graded by me, with specific responses to whatever comments I may have made on your phase 2.<\/p>\n<p>2. Provide a class diagram for your project, showing inheritance and aggregation.\u00a0 Show key methods, key dependencies, and inheritance and aggregation.\u00a0\u00a0 Use your packages and Facades to avoid a single overwhelming figure.<\/p>\n<p>3. Show at least one additional model that completes your design.<\/p>\n<p><em> Criteria: <\/em><\/p>\n<p><em><em> a<em>. <span style=\"text-decoration: underline;\">Clarity<\/span> of the model (A = very clear class meanings; very clear organization; no unnecessary details)<\/em><\/em><\/em><\/p>\n<p><em><em><em> b<em>. <span style=\"text-decoration: underline;\">Adequacy of class model<\/span> for effecting the requirements.\u00a0 (A= detailed enough to clearly allow an implementation that satisfies the requirements.) <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> g<em>. <span style=\"text-decoration: underline;\">Completeness<\/span> **** of models to specify the entire design. (A=right models selected; clearly no gaps in description)<\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><strong><span style=\"text-decoration: underline;\">M<\/span><\/strong>ost room for improvement<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em>1. If you use a data flow diagram, indicate the data types that flow.<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em>2. If you use a data flow diagram, indicate the functionality at each processing node.<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em>3. In the interest of clarity, show the relationships among the packages.\u00a0 You can employ &lt;&lt;uses&gt;&gt; relationships.\u00a0 Omit the classes from such a figure.<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><strong><span style=\"text-decoration: underline;\">R<\/span><\/strong>oom for improvement<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em>1. In this course we did not give meaning to solid lines with arrows.\u00a0 Explain what you mean by them, or don\u2019t use them.<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em>2. Be specific about associations: Do you mean two-way aggregations?<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em>3. You have introduced a class whose name does not indicate a clear purpose and which is not a domain class.\u00a0 Explain it\u2019s purpose.<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em>A <strong><span style=\"text-decoration: underline;\">L<\/span><\/strong>ittle room for improvement<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em>1. \u2026..<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><span style=\"text-decoration: underline;\"> <\/span><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><span style=\"text-decoration: underline;\"> <\/span><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><span style=\"text-decoration: underline;\">Project Phase 4<\/span>: \u00a0\u00a0\u00a0 Due 12\/10<\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><span style=\"text-decoration: underline;\">Section 1<\/span> Attach Phases 2 and 3. Response to my comments on phase 3. <em>( not graded, but required)<\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em> <\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em> <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><span style=\"text-decoration: underline;\"> Section 2<\/span> Show representative input and output.<em> <\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em> <\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em> <\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><span style=\"text-decoration: underline;\"> Section 3<\/span><em> <\/em>Explain the application of all of the steps covered in the notes &#8212; explain if they did not apply. <\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em> (criterion: <em>a<\/em><em>. Clarity and completeness &#8212; A = all relevant steps thoroughly implemented where applicable and explained where not)<\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em> <\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"> Section 4 Provide a complete class diagram and other appropriate model(s), building on the models you submitted for phase 3. <\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em> (criterion: <em>b<\/em><em>. clarity and completeness &#8212; A = very clearly chosen and arranged models)<\/em><\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em> <\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em> <\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em><span style=\"text-decoration: underline;\">Section 5 <\/span>Account of the degree to which you accomplished your requirements as given in phase 2.\u00a0 Please refer to them by number (e.g., 11.3.5).<\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em><em>(criterion: <\/em><em>g. degree of accomplishment.\u00a0 A = excellent functional capabilities for a graduate course) <\/em> <\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em><em> <\/em><\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em><span style=\"text-decoration: underline;\">Section 6<\/span>. Source code. <\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em><em> <\/em><\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em><em>(<\/em><em>d. criterion: clarity &#8212; A = extremely clear layout &amp; code; each part easily traceable to the corresponding design element)<\/em><em> <\/em><\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em><em> <\/em><\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em><em> <\/em><\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em>Please &#8230; <\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em>note that your class diagrams and code must be consistent; <\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em>indicate all differences with prior design decisions; <\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em>indicate all sections using numbered tabs (e.g., Post-it notes) <\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em> <\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em> <\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em> <\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em><strong>Forums &#8212; past and present<\/strong><\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em>Fall 2001<\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n<p><em><em><em><em><em><em><span style=\"text-decoration: underline;\"><em>Fall 2002 email to the group is: <strong>770F02@yahoogroups.com<\/strong><\/em><\/span><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Last updated: November 13, 2002 Recent updates are often in red. Contacting Eric Braude changed if this is red Materials changed if this is red Forums changed if this is red Overview changed if this is red Grading changed if this is red Project Organization changed if this is red Homework and Due Dates changed [&hellip;]<\/p>\n","protected":false},"author":2828,"featured_media":0,"parent":22,"menu_order":7,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"_links":{"self":[{"href":"https:\/\/sites.bu.edu\/braude\/wp-json\/wp\/v2\/pages\/58"}],"collection":[{"href":"https:\/\/sites.bu.edu\/braude\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sites.bu.edu\/braude\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sites.bu.edu\/braude\/wp-json\/wp\/v2\/users\/2828"}],"replies":[{"embeddable":true,"href":"https:\/\/sites.bu.edu\/braude\/wp-json\/wp\/v2\/comments?post=58"}],"version-history":[{"count":2,"href":"https:\/\/sites.bu.edu\/braude\/wp-json\/wp\/v2\/pages\/58\/revisions"}],"predecessor-version":[{"id":60,"href":"https:\/\/sites.bu.edu\/braude\/wp-json\/wp\/v2\/pages\/58\/revisions\/60"}],"up":[{"embeddable":true,"href":"https:\/\/sites.bu.edu\/braude\/wp-json\/wp\/v2\/pages\/22"}],"wp:attachment":[{"href":"https:\/\/sites.bu.edu\/braude\/wp-json\/wp\/v2\/media?parent=58"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}