1 / 26

Computer-Aided Software Engineering

Computer-Aided Software Engineering . “Automating the process ...”. Lecture Objectives. To understand the role of automation in the software engineering process To describe the different types of CASE tools To discuss the importance of integration among the different CASE tools.

Leo
Télécharger la présentation

Computer-Aided Software Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computer-Aided Software Engineering “Automating the process ...” TCS2411 Software Engineering

  2. Lecture Objectives • To understand the role of automation in the software engineering process • To describe the different types of CASE tools • To discuss the importance of integration among the different CASE tools TCS2411 Software Engineering

  3. What is CASE? • CAD/CAM - Computer-aided design & manufacturing • Automated support for software engineering process • Provides engineer with ability to automate manual activities and improve engineering insight and quality • Can be single tool or complete environment TCS2411 Software Engineering

  4. Building Blocks for CASE CASE Tools Integration Framework Portability Services Operating System Hardware Platform Environment Architecture TCS2411 Software Engineering

  5. Taxonomy of CASE Tools • Business Systems Planning • Information Engineering Tools • Process Modeling and Management Tools • Project Management • Project Planning Tools • Risk Analysis Tools • Project Management Tools • Requirements Tracing Tools • Metrics and Management Tools TCS2411 Software Engineering

  6. Taxonomy of CASE Tools (Continued) • Support Tools • Documentation Tools • System Software Tools • Quality Assurance Tools • Database Management Tools • Software Configuration Management Tools • Analysis and Design Tools • PRO/SIM Tools • Interface Design and Development Tools • Prototyping Tools TCS2411 Software Engineering

  7. Taxonomy of CASE Tools (Continued) • Programming Tools • Integration and Testing Tools • Static Analysis Tools • Dynamic Analysis Tools • Test Management Tools • Client/Server Testing Tools • Maintenance Tools • Reengineering Tools TCS2411 Software Engineering

  8. Integration Options • Individual Tool (Point Solution) • Data Exchange • Tool Bridges & Partnerships • Consortium & Standards • Single Source • IPSE TCS2411 Software Engineering

  9. Integration Options Diagram Point Solution Data Exchange Tool Bridges & Partnerships Consortium & Standards Single Source IPSE TCS2411 Software Engineering

  10. Integrated CASE (I-CASE) • Integration of a variety of tools and information that enables closure of communication among tools, between people and across the software process • Combination of CASE tools in an environment where interface mechanisms are standardised TCS2411 Software Engineering

  11. I-CASE Features • All tools sharing SE information • Change of one item tracked to other items • Provide version control and configuration management • Direct access to any tool • Automated support for integration of tools & data into standard WBS TCS2411 Software Engineering

  12. I-CASE Features (Continued) • Consistent look & feel for each tool • Support communication among engineers • Collect management & technical metrics TCS2411 Software Engineering

  13. Benefits of I-CASE • Smooth transfer of information from a tool to another and one SE step to the next • Reduction in effort to perform umbrella activities such as SCM, SQA and document production • increase in project control • Improved coordination among staff members in a large software project TCS2411 Software Engineering

  14. Integration Framework Diagram User interface layer - interface tool kit - presentation protocol Tools management services CASE tool Tools layer Object management layer - integration services - configuration management services Shared repository layer - CASE database - access control functions TCS2411 Software Engineering

  15. Integration Framework • User interface layer • incorporates standardised interface toolkit with common presentation protocol • human-computer interface, display objects, guidelines for same look & feel • Tools layer • tools management - control behaviour of tools • coordination of tasks, e.g. multitasking TCS2411 Software Engineering

  16. Integration Framework (Continued) • Object management layer • configuration management functions • integration services - standard modules that couple tools with repository • Shared repository layer • CASE database • access control functions - enable object management layer interact with database TCS2411 Software Engineering

  17. Process Integration carry out support CASE Tools Activities Users calls advises generate Process Interpreter Process model Results TCS2411 Software Engineering

  18. CASE Workbenches • Set of tools which supports a particular phase of the software process e.g. design • Advantage - tools can work together to provide more comprehensive support • Common services can be implemented and called by all the tools • Integration possible through shared files, shared repository, or shared data structures TCS2411 Software Engineering

  19. Programming workbenches • Language compiler • Structured editor • Linker • Loader • Cross-referencer • Prettyprinter • Static & Dynamic analyser • Interactive debugger TCS2411 Software Engineering

  20. Analysis and Design Workbenches • Diagram editors • Design analysis and checking tools • Repository • Repository query language • Report definition and generation tools • Forms definition • Import/export facilities • Code generators TCS2411 Software Engineering

  21. Testing workbenches • Test manager • Test data generator • Oracle - generates predicted results • File comparator • Report generator • Dynamic analyser • Simulator TCS2411 Software Engineering

  22. Examples of CASE Tools • With Class - object-oriented design and code generation • Eiffelbench - object-oriented programming and debugging • Oracle Designer/2000 - integrated CASE environment TCS2411 Software Engineering

  23. With Class • Design objects - identifying attributes and operations • Specifying relationships • Diagramming for various methodologies • Code generation for various languages TCS2411 Software Engineering

  24. Eiffelbench • Based on Eiffel language (an object-oriented language) • For development and debugging of program • Consists of tools such as: • Project Tool • System Tool • Class Tool • Feature Tool • Object Tool TCS2411 Software Engineering

  25. Oracle Designer/2000 • Repository Administration • Process Modeler • Entity Relationship Diagrammer • Function Hierarchy Diagrammer • Dataflow Diagrammer • System Designer • Utilities TCS2411 Software Engineering

  26. References • “Software Engineering: A Practitioner’s Approach” 5th Ed. by Roger S. Pressman, Mc-Graw-Hill, 2001 • “Software Engineering” by Ian Sommerville, Addison-Wesley, 2001 TCS2411 Software Engineering

More Related