Reference no: EM132134651
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?