Software PattensSlide 2Slide 3The concept of extracting patterns using software stability conceptsStable Analysis Patterns’ PropertiesStable Analysis Patterns AdvantagesNegotiation Analysis Pattern (1)Negotiation Analysis Pattern (2)Negotiation Analysis Pattern (3)Negotiation Analysis Pattern (4)Forces (1)Forces (2)Forces (3)Forces (4)Pattern Structure and ParticipantsCRC Cards (1)CRC Cards (2)CRC Cards (3)Slide 19OutlineProblem Overview (1)Problem Overview (2)Solution Requirements (1)Solution Requirements (2)Current Solutions- OverviewCurrent Solutions- LimitationsProposed Solution (1)Proposed Solution (2)Pattern StructureParticipants (1)Participants (2)Participants (3)2nd Level Of AbstractionApplicability with Illustrated ExampleWeather Application (1)Weather Application (2)Weather Application (3)Instantiation Symbols DescriptionSlide 39Discussion QuestionsTasks for Next Lecture2003SJSU -- CmpE L03-S1 Stable Analysis PatternsSoftware Pattens Dr. M.E. Fayad, ProfessorComputer Engineering Department, Room #283I College of EngineeringSan José State UniversityOne Washington SquareSan José, CA 95192-0180 http://www.engr.sjsu.edu/~fayad2003SJSU – CmpE --- M.E. Fayad L03-S2 Stable Analysis Patterns2Lesson 3:Stable Analysis Patterns2003SJSU – CmpE --- M.E. Fayad L03-S3 Stable Analysis Patterns Lesson ObjectivesObjectives3 Explore Stable Analysis Patterns Examine Stable Analysis Patterns Discuss the following Stable Analysis Patterns: Negotiation Model-View-Mapping (MVM) Searching2003SJSU – CmpE --- M.E. Fayad L03-S4 Stable Analysis Patterns4The concept of extracting patterns using software stability concepts ProblemFIRST ABSTRACTION:Apply SSM conceptsDefine EBTs, BOs, and IOsCreate SSM for the problemSECOND ABSTRACTION:Model each EBT using SSM conceptsBuild natural domain Stable Analysis Pattern2003SJSU – CmpE --- M.E. Fayad L03-S5 Stable Analysis PatternsTimeless Notion PatternGenerality: Generality PatternsUsability and Reusability PatternsScalability PatternsPresentation of the Core Knowledge PatternsOne Presentation of the Problem Space PatternsConfigurability and Re-Configurability PatternsAdaptability PatternsExtensibility PatternsAccessibility PatternsIntegratability Patterns 5Stable Analysis Patterns’ Properties2003SJSU – CmpE --- M.E. Fayad L03-S6 Stable Analysis PatternsContribute to Stable ArchitecturesAid True Problem UnderstandingProvide True Problem ModelingEnhance Team Dynamic9Stable Analysis Patterns Advantages2003SJSU – CmpE --- M.E. Fayad L03-S7 Stable Analysis PatternsNegotiation is a general concept that has many applications in various contexts. In our every day life, there are various situations where negotiation usually takes place. For instance, buying or selling properties usually involves some sort of negotiation (e.g. buying or selling a home or a car). In addition, negotiation can be used for solving social and political conflicts. 6Negotiation Analysis Pattern (1)2003SJSU – CmpE --- M.E. Fayad L03-S8 Stable Analysis PatternsIn software systems, Negotiation also appears frequently in the development of different applications. For instance, developing software for online auctions and shopping might involve the negotiation of the price and/or the negotiation of different product aspects. More technically, negotiation becomes an essential part in the development of next generation Web-based devices and appliances. 7Negotiation Analysis Pattern (2)2003SJSU – CmpE --- M.E. Fayad L03-S9 Stable Analysis PatternsToday, devices that need to access the Web diverge greatly in their capabilities, making it highly desirable for the same resource to be available in several different representations (different languages for example). Negotiation algorithms play a fundamental role in aiding servers to decide which representation of a document a device should be given. In this case, the browser (or the client agent) will indicate its preferences by including a header in the request. 8Negotiation Analysis Pattern (3)2003SJSU – CmpE --- M.E. Fayad L03-S10 Stable Analysis PatternsPattern Name: Negotiation Problem: How does one build a negotiation model that can be used to model the negotiation problem in any application? 10Negotiation Analysis Pattern (4)2003SJSU – CmpE --- M.E. Fayad L03-S11 Stable Analysis PatternsNegotiation spans many contexts that are completely different in their natures.The Negotiation process can take place between two or more persons, between persons and organizations, or between two non-human entities; in each case, the negotiator structure is completely different. How can we handle these different structures using a single model? 11Forces (1)2003SJSU – CmpE --- M.E. Fayad L03-S12 Stable Analysis PatternsThe Negotiation entity can be an organization consisting of many persons, each having a role in the negotiation process. For instance, there can be one individual who is responsible for negotiating financial issues, another who is responsible for negotiating issues related to management, and so on. Therefore, our pattern should be flexible enough to handle different negotiator structures. 12Forces (2)2003SJSU – CmpE --- M.E. Fayad L03-S13 Stable Analysis PatternsNegotiation can be conducted through one or more media either simultaneously or consecutively; thus, the pattern should handle the use of multiple media. Negotiation can be performed on one or more affairs at the same time. For instance, negotiation that takes place in the buying and selling context usually involves more than one subject to be negotiated. For example, in buying a car, one can negotiate the price, the warranty, and so on. Therefore, the pattern should be flexible enough to handle such situations. 13Forces (3)2003SJSU – CmpE --- M.E. Fayad L03-S14 Stable Analysis PatternsThe ultimate goal of any negotiation is to reach an agreement between the negotiators. However, the nature of this agreement varies tremendously from one application to another and from one context to another. An agreement that might be reached while negotiating a political conflict is completely different from that reached while buying a car. Therefore, the pattern should be able to handle these wide variations.14Forces (4)2003SJSU – CmpE --- M.E.
View Full Document