FIU CEN 5011 - System Design: Addressing Design Goals

Unformatted text preview:

Advance Software Engineering (CEN-5011)AcknowledgementsAgendaActivity 3: ConcurrencyConcurrency (continued)Concurrency QuestionsImplementing ConcurrencySlide 8Activity 4: HW/SW MappingMapping the ObjectsConnectivityExample of a Connectivity DrawingLogical vs. Physical ConnectivityLayeringHW/SW Mapping QuestionsConnectivity in Distributed SystemsDrawing HW/SW Mappings in UMLComponent DiagramComponent Diagram ExampleDeployment DiagramDeployment Diagram ExampleSlide 22Activity 5: Data ManagementFile or Database?Object-Oriented DatabasesRelational DatabasesSlide 30Activity 6: Global Resource HandlingDefining Access ControlAccess MatrixAccess Matrix ImplementationGlobal Resource QuestionsSlide 36Activity 7: Software ControlCentralized ControlEvent-Driven Control Example: MVCSoftware Control (continued)Centralized vs. Decentralized (1)Centralized vs. Decentralized (2)Slide 43Activity 8: Boundary ConditionsAdministration Use CasesExample: MyTripManageServer Use CaseBoundary Condition QuestionsModeling Boundary ConditionsSlide 50SummaryCEN 5011 8th LectureAdvance Software Engineering (CEN-Advance Software Engineering (CEN-5011)5011)Instructor: Masoud Sadjadihttp://www.cs.fiu.edu/~sadjadi/System Design:System Design: Addressing Design Addressing Design GoalsGoals8th Lecture2CEN 5011: Advanced Software EngineeringAcknowledgementsAcknowledgementsDr. Bernd BrueggeDr. Allen DutoitOvervieOverview:w:ConcurrencyHW/SW MappingData Manage.Access ControlSoftware ControlBoundary Cond.Summary8th Lecture3CEN 5011: Advanced Software EngineeringAgendaAgendaSystem Design I (previous lecture)–0. Overview of System Design–1. Design Goals–2. Subsystem DecompositionSystem Design II–3. Concurrency–4. Hardware/Software Mapping–5. Persistent Data Management–6. Global Resource Handling and Access Control–7. Software Control–8. Boundary ConditionsSummaryOvervieOverview:w:ConcurrencyHW/SW MappingData Manage.Access ControlSoftware ControlBoundary Cond.Summary8th Lecture4CEN 5011: Advanced Software EngineeringActivity 3: ConcurrencyActivity 3: ConcurrencyIdentify concurrent threads and address concurrency issues.Design goal: response time, performance.Threads–A thread of control is a path through a set of state diagrams on which a single object is active at a time.–A thread remains within a state diagram until an object sends an event to another object and waits for another event.–Thread splitting: Object does a nonblocking send of an event.OvervieOverview:w:ConcurrencyHW/SW MappingData Manage.Access ControlSoftware ControlBoundary Cond.Summary8th Lecture5CEN 5011: Advanced Software EngineeringConcurrency (continued)Concurrency (continued)Two objects are inherently concurrent if they can receive events at the same time without interactingInherently concurrent objects should be assigned to different threads of controlObjects with mutual exclusive activity should be folded into a single thread of control (Why?)OvervieOverview:w:ConcurrencyHW/SW MappingData Manage.Access ControlSoftware ControlBoundary Cond.Summary8th Lecture6CEN 5011: Advanced Software EngineeringConcurrency QuestionsConcurrency QuestionsWhich objects of the object model are independent?What kinds of threads of control are identifiable?Does the system provide access to multiple users?Can a single request to the system be decomposed into multiple requests? Can these requests be handled in parallel?OvervieOverview:w:ConcurrencyHW/SW MappingData Manage.Access ControlSoftware ControlBoundary Cond.Summary8th Lecture7CEN 5011: Advanced Software EngineeringImplementing ConcurrencyImplementing ConcurrencyConcurrent systems can be implemented on any system that provides –Physical Concurrency (hardware) or–Logical Concurrency (software)Scheduling problem (Operating systems)OvervieOverview:w:ConcurrencyHW/SW MappingData Manage.Access ControlSoftware ControlBoundary Cond.Summary8th Lecture8CEN 5011: Advanced Software EngineeringAgendaAgendaSystem Design I (previous lecture)–0. Overview of System Design–1. Design Goals–2. Subsystem DecompositionSystem Design II–3. Concurrency–4. Hardware/Software Mapping–5. Persistent Data Management–6. Global Resource Handling and Access Control–7. Software Control–8. Boundary ConditionsSummaryOvervieOverview:w:ConcurrencyHW/SW MappingData Manage.Access ControlSoftware ControlBoundary Cond.Summary8th Lecture9CEN 5011: Advanced Software EngineeringActivity 4: HW/SW MappingActivity 4: HW/SW MappingThis activity addresses two questions: –How shall we realize the subsystems: Hardware?Software? –How is the object model mapped on the chosen hardware and software?Mapping Objects onto Reality: Processor, Memory, Input/Output.Mapping Associations onto Reality: Connectivity.Much of the difficulty of designing a system comes from meeting externally-imposed hardware and software constraints. –Certain tasks have to be at specific locations.OvervieOverview:w:ConcurrencyHW/SW MappingData Manage.Access ControlSoftware ControlBoundary Cond.Summary8th Lecture10CEN 5011: Advanced Software EngineeringMapping the ObjectsMapping the ObjectsProcessor issues:–Is the computation rate too demanding for a single processor?–Can we get a speedup by distributing tasks across several processors?–How many processors are required to maintain steady state load?Memory issues: –Is there enough memory to buffer bursts of requests?I/O issues:–Do you need an extra piece of hardware to handle the data generation rate? –Does the response time exceed the available communication bandwidth between subsystems or a task and a piece of hardware?OvervieOverview:w:ConcurrencyHW/SW MappingData Manage.Access ControlSoftware ControlBoundary Cond.Summary8th Lecture11CEN 5011: Advanced Software EngineeringConnectivityConnectivityDescribe the physical connectivity of the hardware –Often the physical layer in ISO’s OSI Reference ModelWhich associations in the object model are mapped to physical connections?Which of the client-supplier relationships in the analysis/design model correspond to physical connections?Describe the logical connectivity (subsystem associations)–Identify associations that do not directly map into physical connections:How should these associations be implemented? OvervieOverview:w:ConcurrencyHW/SW MappingData Manage.Access ControlSoftware ControlBoundary


View Full Document

FIU CEN 5011 - System Design: Addressing Design Goals

Download System Design: Addressing Design Goals
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view System Design: Addressing Design Goals and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view System Design: Addressing Design Goals 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?