Abstract

Object-Oriented Programming (OOP) has been recognized to have great potential in producing high quality, large reusable software. However, we often find it difficult to write good C++ or Smalltalk programs. Without good program designs we will not reap the benefits of OOP. On the other hand, Object-Oriented Design (OOD) is considerably more complex than that of the traditional design disciplines such as Structured Design. Therefore, without the help of powerful CASE tools, we may not achieve the benefits of OOD and OOP.This demonstration will present TurboCASE, a multi-methodology supporting CASE tool that supports both Object-Oriented Analysis (OOA) and OOD. TurboCASE provides multiple views to help software designers create good OOD models.TurboCASE allows you to create and maintain Class Hierarchy, Class Collaboration, Class Definition, and Class Design Diagrams. The Class Hierarchy Diagram not only shows the class hierarchy, but also helps resolve how polymorphism works. The class Collaboration Diagram gives three levels of abstraction showing how objects communicate with each other. The Class Definition Diagram shows the methods and instance variables of the class, as well as providing the ability to browse the capabilities of the class inherited from the class hierarchy. The Class Design Diagram allows you to design a class similar to that of the Structured Chart with full support of the method signature specification. These diagrams are integrated through a project database, thereby providing multiple views of the software design.TurboCASE also provides intelligent help to refine the design such as abstracting the common behaviors of classes into an abstracted class. Subsystems can be designed top-down as well as bottom-up by abstracting from system components. These capabilities greatly reduce the complexities of the designs and help achieve optimal solutions.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.