Questions and Exercises
-
Sketch a diagram showing the "knowledge gap" that occurs in the
lifecycle development of new products.
Briefly describe techniques that can be used to narrow the knowledge gap.
Why is the knowledge gap for "routine" design narrower than "new" design?
-
Why is "abstraction" an important principle for the design of complex engineering systems?
-
We expect that future design methodologies will employ reuse
of design entities described at both high and low levels of
abstraction. With respect to the development of a Sony Walkman product line:
-- Give two examples of design entities that might be reused
and described at a high level of abstraction.
-- Give two examples of design entities that might be reused
and described at a low level of abstraction.
-
What are the challenges, benefits and trade-offs that exist in
the practical reuse of work at "low" and "high" levels of abstraction?
-
Why are systems engineers interested in developing methodologies
that "orthogonalize" design concerns. What does this mean?
What are the anticipated benefits? How might this occur?
-
What is a formal method? Why are systems engineers interested
in developing methodologies that employ "formal methods?"
-
What are the purposes of a "standards processing" program?
For the design of a multi-disciplinary electro-mechanical
system (e.g., a Sony Walkman) what are some of the
difficulties facing the implementation of such a system?
-
What is the difference between "validation" and "verification?"
Briefly explain how validation and verification technquies are
currently employed in the development of products?
Looking ahead, how is this expected to change in the future
development of systems. What are the benefits and challenges of such a change?
-
What are the main differences between functional and
object-oriented approaches to system development?
-
Are object-oriented approaches to system development essential?
If not, why not? If so, why?
-
Draw a flow-chart diagram showing the sequence of
activities that occur in function-architecture co-design.
-
What are the differences between "function-architecture co-design"
and "hardware-software co-design?"
-
At the logical stage of design, a key question is "can the system
work?" Describe (I suggest using simple labeled diagrams) how
this issue manifests itself for:
-- A mechanical design.
-- An electrical design.
-- A computer software program.
In practical terms, what is the difference between "can the system
work?" and "how does the system work?"
-
Explain the role of "mappings" at the logical and physical stages of design.
-
Suppose that task requires completion of four activities "A," "B," "C" and "D."
The scheduling of activities is constrained as follows:
-- Activities "A" and "B" can run concurrently.
-- Activities "C" and "D" can run concurrently.
-- Activities "C" and "D" cannot begin until both
"A" and "B" are complete.
Draw an activity diagram for this scenario.
-
How does UML facilitate "top-down" design of complex systems?
-
How does UML facilitate "bottom-up" synthesis of complex systems?
-
What are the principles that should be followed in "decomposing"
a complex system into an assembly of simpler sub-systems.
-
Suppoese that you are working for Honda designing their next
release "Civic" automobible. Assuming that the next release will
be an extension of previous models:
-- What are three examples of reuse at low-levels of abstraction?
-- What are three examples of reuse at high-levels of abstraction?
-
Briefly explain how "current practices of design"
deviate from the logical-physical design pathway.
-
As a "rule of thumb," the functionality of systems should be
decomposed down to a level of detail where each function can
be assigned to a single device.
Briefly explain how this principle applies to the system-level
design of the quadratic equation machine (which you just handed in).
-
A fundemental tenet of systems modeling and analysis is the need
to support (simplified) models tailored to specific viewpoints.
Briefly explain how this principle might apply to the system-level
design of the quadratic equation machine (which you just handed in).
-
Suppose that you have been asked to evaluate the "logical design"
of several design alternatives for an engineering system (e.g., a
controlled traffic intersection).
What are some of the factors you should incorporate in a systematic
evaluation and trade-off analysis of design alternatives?
-
Suppose that you have been asked to evaluate the "physical design"
of several design alternatives for an engineering system (e.g., a
controlled traffic intersection).
What are some of the factors you should incorporate in a systematic
evaluation and trade-off analysis of design alternatives?
-
Why do we say UML is a "visual modeling language" and not a
"visual programming language?"
-
UML was developed to support synthesis of large and complex
software systems. Briefly describe some of the problems you
foresee in adapting UML to systems engineering applications.
-
Briefly explain how UML diagrams can be stored in databases?
-
What are the key differences between sequence and collaboration diagrams?
-
UML models include relationships, things and occurrences.
Explain how models of system behavior, system structure, and
system design alternatives are derived from these fundamental entities of UML.
-
How do generalized use cases differ from use case instances?
Demonstrate by example how use case instances are usef ul for
the quadratic equation machine (developed in the homework).
-
What is a meta-model?
-
What are some of the key differences between low- and high-end
models of traceability?
In your opinion, where do the requirements engineering tools
DOORS and SLATE fit into this range of capability?
-
Briefly explain how design structure matrices can be used to
improve design processes.
-
What are the trade-offs that can occur in mapping models of
system behavior onto models of system structure?
-
What is the purpose of a facade design pattern?
-
With respect to component based design, what are upper- and lower- interfaces?
Briefly describe an application of these interfaces for something
found in the home.
-
What is the key shortcoming of reuse through "cut-and-paste?"
-
In the pathway of development for a reuseable component
library, "Generalize" is a key step. In this context, what
does "generalize" mean?
Acknowledgments
Thanks to the students in ENSE 621 and ENSE 622,
the National Science Foundation, and industry support --
General Electric CRD, Lockheed Martin, and NASA Goddard Space Flight Center.
References and Web Resources
REFERENCES
-
Alexander C. et al., A Pattern Language ,
Oxford University Press, New York, 1977.
-
Armour F., Miller G., Advanced Use Case Modeling,
Addison-Wesley, 2001.
-
Balasubramaniam R., Jarke M., "Toward Reference Models for
Requirements Traceability," IEEE Transactions on Software
Engineering, Vol. 27, No. 1, January 2001.
-
Biggerstaff T. and Ricter C., Reusability Framework, Assessment and
Directions, Tutorial: Software Reuse -- Emerging Technology,
IEEE Computer Society, EH0278-2, pp. 3-11.
-
Bienvenu M.P., Shin I., and Levis A.H.,
C4ISR Architectures: III. An Object-Oriented Approach for Architecture Design,
Systems Engineering ,
Vol. 3, No. 4, pp. 288-307, 2000.
-
Bock C., "Three Kinds of Behavior Model," Journal of Object-Oriented Programming,
Vol. 12, No. 4, July/August 1999.
-
Carchiols V., Malgeri M., and Mangioni G., Hardware/Software Synthesis of
Formal Specifications in CoDesign of Embedded Systems, ACM Transactions
on Design Automation of Electronic Systems, Vol. 5, No. 3, July 2000, pp. 399-422.
-
Communications of the ACM., Issue on Software Patterns,
October 1996, Vol. 39, No. 10, New York, 1996.
-
Gamma E. et al., Design Patterns: Elements of Reusabel Object-Oriented Software ,
Addison-Wesley, Reading, Mass., 1995.
-
Gomaa H.,
Designing Concurrent, Distributed, and Real-Time Applications with UML,
Addison-Wesley, 2000.
-
Graham I., Object-Oriented Methods : Principles and Practice ,
Third Edition, Addison-Wesley, 2001.
-
Keutzer K., Malik S., Newton R.A., Rabaey J.M., Sangiovanni-Vincentelli A.,
System-Level Design : Orthogonalization of Concerns and Platform-Based Design,
IEEE Transactions on Computer-Aided Design of Circuits and Systems,
Vol. 19, No. 12, December 2000.
-
Larman C., Applying UML and Patterns :
An Introduction to Object-Oriented Analysis and Design ,
Prentice-Hall, 1998.
-
Lin, Y.L., "Survey Paper: Recent Development in High-Level Synthesis,"
ACM Transactions on Design Automation of Electronic Systems,
Vol. 2, No. 1., January 1997, pp. 2-21.
-
Mitschele-Thiel A., "Systems Engineering with SDL,"
John-Wiley and Sons, New York, 2001.
-
Ogren I., "Possible Tailoring of the UML for Systems Engineering Purposes,"
Systems Engineering ,
Vol. 3, No. 4, pp. 212-224, 2000.
-
Oliver D.W., Kelliher T.P., and Keegan Jr. J.G.,
Engineering Complex Systems : With Models and Objects ,
McGraw Hill, 1997.
-
Rechtin E., Maier M.W., The Art of Systems Architecting ,
Systems Engineering Series, CRC Press, 1997.
-
Rowlett T., The Object-Oriented Development Proces ,
Prentice-Hall, Upper Saddle River, NJ 07458, 2001.
-
Sangiovanni-Vincentelli A., McGeer P.C., Saldanha A.,
"Verification of Electronic Systems,"
Design Automation Conference 96, Las Vegas, NV, USA.
-
Satzinger J.W. et al.,
Systems Analysis and Design in a Changing World ,
2000 Course Technology, a division of Thomson Learning, 2000,
-
Schultz A.P., Clausing D.P., Fricke E., Negele H., "Development and
Integration of Winning Technologies as a key to Competitive Advantage,"
Systems Engineering, Vol. 3, No. 4., 2000.
-
The Patterns Handbook : Techniques, Strategies and Applications ,
Collected and Introduced by Linda Rising,
SIGS Reference Library.
Cambridge Press, 1998.
Component-Based Design
-
Atkinson C., et al., Component-Based Product Line Engineering with UML,
Component Software Series, Addison-Wesley, 2002.
-
Brown A.W., Large-Scale Component-based Development,
Prentice-Hall, 2000.
-
Wallnau K.C., Hissam S.A., Seacord R.C., Building Systems from Commercial Components,
Addison-Wesley, 2001.
Principles of Engineering Design
-
Whitney D.E., "Designing the Design Process," Research in Engineering
Design, Vol. 2, 1990, pp. 3-13.
-
Whitney D.E., "Why Mechanical Design Cannot be like VLSI Design,"
Research in Engineering Design, Vol. 8, 1996, pp. 125-138.
-
Finger S., and Dixon J.R., A Review of Research in Mechanical Engineering
Design, Part II : Representations, Analysis and Design for Life Cycle,"
Research in Engineering Design. Vol 1., No. 2. pp. 121-137, 1998.
-
Ahmed S., "The Relationships between Data, Information, and Knowledge
Based on a Preliminary Study of Engineering Designers," DETC99, ASME
Design Theory and Methodology, September 12-15, Las Vegas, Nevada, 1999.
-
Gebala D.A., Eppinger S.D., "Methods for Analyzing Design Procedures,"
DE Vol. 31, Design Theory and Methodology, ASME, 1991. pp. 227-233.
Decision Theory/Decision-Based Design/Systems Design
-
Thurston D.L., "Real and Perceived Limitations to Decision Based Design,"
Proceedings of the 1999 ASME Design Engineering Technical Conferences : DETC99, DTM-8750.
Las Vegas, Nevada, September 12-15, 1999.
-
Finch W.W., "An Overview of Inference Mechanisms for Quantified Relations,"
Proceedings of the DETC98,
ASME Design Engineering Technical Conferences,
Atlanta, GA, September 13-16, 1998.
-
Finch W.W., "Set-Based Models of Product Platform Design and Manufacturing Processes,"
Technology Development at the Fuzzy Front End as a Key to Success,
Proceedings of the 1999 ASME Design Engineering Technical Conferences : DETC99, DTM-8750.
Las Vegas, Nevada, September 12-15, 1999.
-
Schulz A.P., Clausing D.P., Negele H., Fricke E.,
"Shifting the View in Systems Development -
Technology Development at the Fuzzy Front End as a Key to Success,
Proceedings of the 1999 ASME Design Engineering Technical Conferences : DETC99, DTM-8750.
Las Vegas, Nevada, September 12-15, 1999.
Counter Examples for Decision Making
-
Buede, D. M. and Maxwell, D. T., 1995, "Rank Disagreement: A comparison of
Multi-criteria Methodologies", Journal of Multi-Criteria Decision Analysis,
Vol. 4, 1-21.
-
Olson, D. L., Fliedner, G., and Currie, K., 1995, "Comparison of the
REMBRANDT system with Analytic Hierarchy Process",
European Journal of Operational Research 82, 522-539.
WEB RESOURCES
Unified Modeling Language (UML)
Object Constraint Language (OCL)
Systems Architecting
Design Patterns
Developed in February 2001 by Mark Austin
Copyright © 2001-2002, Mark Austin, University of Maryland