80 likes | 205 Vues
In this mini-presentation, we delve into the essential architectural decisions necessary for designing a cruise control system for a new car company. We will identify critical components, connectors, and their configurations that ensure seamless operation. Key challenges include maintaining desired speeds while managing braking, and the significant disadvantages of shared data architecture. Through an exploration of functional modules and object-oriented programming, we will assess whether this is the best approach to our design needs. Join us for an engaging discussion of design methodologies and the implications for sensor and controller integration.
E N D
Sept 17 AOSA mini-presentations start • 5 min max, 2 speaker max • Cover context, arch. decisions, important qualities. • Email for TAs is updated on web page.
Review questions • In this diagram, what are the connectors, the components, and the configuration?
Review • In the KWIC problem we talked about, what is the main disadvantage of the shared-data architecture?
Design challenge • You are the architects at a new car company. Design an architecture that will solve the following cruise control problem: • When the system is active, determine the desired speed and control the engine throttle setting to maintain that speed. When the brake is applied, relinquish speed control until told to resume. • Draw up a simple component diagram that shows how this arch might look Sources: Booch, 1986 TSE, Shaw, 1995, ToSEM
Solution: Functional • Break the system into functional modules: Problem: changes in one function affect the others.
Solution: OOP • Each module denotes an object from the problem space. • Then, assign responsibility in the form of data and operations to each object. • Easier to abstract system, compose with other subsystem (steering) • But, is this the best abstraction for the CC problem? E.g., how do we know what sequence of events has to happen?
Solution: Process control • Use a control view of the problem • Emphasize the interdependence with physical sensors and elements (fuel quality, road quality. • A methodology that helps identify critical design decisions: how many sensors, how many controllers, safety concerns, etc. • Provide for modifications like adaptive CC and more processors.