Software Engineering Answer each of the following questions posed for control an
ID: 3783104 • Letter: S
Question
Software Engineering
Answer each of the following questions posed for control and data when applied a “stepwise refinement approach” to develop three different levels of procedural abstraction in a simple invoicing system for a small business.
Control:
1. How is control managed within the architecture?
2. Does a distinct control hierarchy exist, and if so, what is the role of components within this control hierarchy?
3. How do components transfer control within the system?
4. How is control shared among components?
5. What is the control topology (i.e., the geometric form that the control takes)?
6. Is control synchronized or do components operate asynchronously?
Data:
1. How are data communicated between components?
2. Is the flow of data continuous, or are data objects passed to the system sporadically?
3. What is the mode of data transfer (i.e., are data passed from one component to another or are data available globally to be shared among system components)?
4. Do data components (e.g., a blackboard or repository) exist, and if so, what is their role?
5. How do functional components interact with data components?
6. Are data components passive or active (i.e., does the data component actively interact with other components in the system)?
7. How do data and control interact within the system?
Explanation / Answer
Simple Invoicing System for a Small Business
Control:
1. How is control managed within the architecture?
In Software architecture, there are a set of connectors (control hierarchy) that enable “communication, coordination and cooperation” among various components present in the architecture. These are basically pre-defined rules for all possible value of input or data flows in the system. The control flow work on the principle of Call and return. For every data flow (input), there is pre-defined rules of what to return to user, whom to handover control in case of successful or failure.
2. Does a distinct control hierarchy exist, and if so, what is the role of components within this control hierarchy?
Yes, There is a distinct control hierarchy exist also known as program structure. The organization of program components (modules) are represented by it. Different notations are used to represent control hierarchy for those architectural styles that are amenable to this representation. The component represents and operates subtly different characteristics of the software architecture: visibility and connectivity. All of the objects are visible to the module. Connectivity indicates the set of components that are directly invoked or used as data by a given component.
3. How do components transfer control within the system?
In control hierarchy, A module that controls another module is said to be superordinate to it, and conversely, a module controlled by another is said to be subordinate to the controller. Superordinate module transfer the control flow to the respective subordinate module
4. How is control shared among components?
In the software architecture, the user data is centralized and accessed frequently by various components simultaneously. Control is shared among components through shared data repositories. The components access a shared data structure and are relatively independent, in that, they interact only through the data store.
5. What is the control topology (i.e., the geometric form that the control takes)?
The control hierarchy and architectural styles are mostly represented in the treelike geometrical diagram that represents hierarchical control for call and return architectures. It is also known as control topology.
6. Is control synchronized or do components operate asynchronously?
Control is synchronized among components. Components simultaneously shared the control flow among them.
Data:
1. How are data communicated between components?
Data communicates between component through centralized data repositories where each stream of data coming from external source (user) is stored and utilized properly for various process
2. Is the flow of data continuous, or are data objects passed to the system sporadically?
Data flow is continuous in nature.
3. What is the mode of data transfer (i.e., are data passed from one component to another or are data available globally to be shared among system components)?
Data is available globally so that any participating components can use the shared data.
4. Do data components (e.g., a blackboard or repository) exist, and if so, what is their role?
Yes, Data components exist. The role of data components is to establish proper communication among data and control components.
6. Are data components passive or active (i.e., does the data component actively interact with other components in the system)?
Data components are active in nature.
7. How do data and control interact within the system?
Data and control interact within the system through data repository.
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.