소프트웨어공학

 

 

 

Object-Oriented Systems Analysis And Design Using UML Third Edition

Chapter 4. What Is Object-Orientation?

Learning Objectives

In this chapter you will learn

 

Summary

In tihs chapter we have introduced the most important concepts in object-orientation, in particular, object and class, generalization and specialization, message passing, object state and polymorphism. Understanding these gives an essential foundation for later chapters that deal with the practical application of object-oriented analysis and design techniques. There is a great deal of synegy in the way that the different fundamental concepts contribute to the success of object-orientation. For example, message passing and polymorphism both play a significant role in achieving sound modularity in a system. But there is no clean break with the past; instead, the characteristics of object-orientation are best seen as the result of a gradual process of evolution that can be traced back tot he earliest days of electronic digital computers. This evolutionary process is by no means finished yet, but rushes onwards into the future. As applications and computing environments grow ever more complex, there is a continuing need for reliable, maintainable, modifiable information systems.

 

Review Question

  1. Define object, class andinstance.
  2. What do you think is meant by 'semantics'?
  3. How dose the object-oriented concept of message passing help to encapsulate the implementation of an object, including its data?
  4. What is polymorphism?
  5. What is the difference between generalization and specialization?
  6. What rules describe the relationship between a subclass and its superclass?
  7. What does it mean to say that an object-oriented system is highly modular?
  8. Why is it particulary hard for a designer to anticipate a user's sequence of tasks when using a GUI application?
  9. What does 'object state' mean?
  10. What is an operation signature?

 

Chapter 5. Modelling Concepts

Learning Objectives

In this chapter you will learn

 

Summary

As in many kinds of development projects, we use models to represent things and ideas that we want to document and to test out without having to actually build a system. Of course, our ultimate aim is to build a system and the models help us to achieve that. Models allow us to create different views ofa  system from different perspectives and, in an information systems development project, most models are graphical representations of things in the real world and the software artefacts that will be used in the information system.

 These graphical representations are diagrams, which can be used to model objects and processes. In UML a number of diagrams are defined and the rules for how they are to be drawn are documented. UML diagrams are made up of four graphical elements: icons, two-dimensional symbols, paths and strings. Diagrams are also supported with textual material, some of which may be informal, for example in natural language, while some may be formal, for example written in Object Constraint Language.

 As a project progresses a variety of models are produced in order to represent different aspects of the system that is being built. A model is a complete and consistent view of a system from a particular perspective, typically produced using diagrams. An example of a diagram notation that is used in UML is the activity diagram. Activity diagrams model activities that are carried out in a system and include sequences of actions, alternative paths and repeated actions. As well as being used in system development projects, activity diagrams are also used in the Unified Software Development Process to document the sequence of activities in a workflow.

 

 

Creative Commons License