SIM 3302 Software Design Testing Software Engineering A
- Slides: 25
SIM 3302 Software Design & Testing Software Engineering: A Practitioner’s Approach, 5/e Chapter 31 Computer-Aided Software Engineering These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 1
CASE. . . in its idealized form, CASE combines a set of software development tools that are integrated with a data base to form an environment. . . the tools address each important step in the software engineering process. . . the tools increase insight thereby improving quality; reduce drudgery thereby improving productivity; and enhance control, thereby leading to on-time projects. . . These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 2
Learning Objectives At the end of this chapter, students should be able to n Explain the purpose of CASE tool. n Explain the CASE building blocks. n Explain the taxonomy of CASE tools. n Explain what is I-CASE Explain n Explain the benefits and challenges of I-CASE n List and draw the integration architecture n Explain what is CASE repository These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 3
Introduction What is CASE? · CASE is the use of IT in SW development activities, techniques and methodology • CASE tools are programs that automate or support one or more phases in a SW development life cycle Purpose of CASE tools : • · increase the speed of SW development activities • increase the SW productivity These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s the Approach, 6/e and are provided • improve quality of with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 4
CASE building blocks CASE environment model CASE Tools Integration framework Important to ICASE Found in most application support models Portability services Operating system HW platform Environment architecture These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 5
CASE building blocks…cont. n n n portability services = as a bridge between CASE tools + integration framework + environment architecture integration framework = collection of specialized programs that enables individual CASE tools to : ü communicate with one another ü create a project data base ü exhibit the same look and feel to the SW engineer integrated tools help project team develop, organize and control work products These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 6
CASE building blocks…cont. n Integration options are shown below : Individual tool (point solution) ·Used to assist in a particular SE activity (ex : analysis modeling) ·Does not directly communicate with other tools ·Not part of I-CASE environment These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 7
Integration options…cont Data exchange ·Facilities for data exchange ·Produce output in std format that compatible with other tools ·Or form a bridge between tools Tool bridges & partnerships These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 8
Integration options…cont Single source integration ·When a single CASE tools vendor integrates a number of different tools ·Sells as a package ·Addition of tools from other vendors is not easy These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 9
Integration options…cont Integrated Project Support Environment ·Each building blocks have been created ·Use IPSE standards to build tools that’ll be compatible with IPSE These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 10
Taxonomy of CASE tools n n CASE tools do not have to be part of an integrated environment to be useful to SW engineers but the impact on product quality will be greater if they are [pressman] CASE tools can be classified by function, role, use in SE process, environment architecture, etc. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 11
A Taxonomy of CASE Tools business systems planning project management support CASE Database analysis and design programming integration &testing prototyping/simulation tools re–engineering framework These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 12
Integrated CASE (I-CASE) environments n n n Integration = combination and closure Combines a variety of different tools and a spectrum of information enables closure of communication among tools, between people and across the SW process Tools are integrated SE information is available to each tool that needs it Usage is integrated common look and feel is provided for all tools Development philosophy is integrated standards SE approach These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 13
Benefits of I-CASE Smooth transfer of information from one tool to another and one SE step to the next Reduction in the effort required to perform umbrella activities Increase in project control Improve staff coordination These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 14
Challenges of I-CASE n n Consistent representations of SE information Standardized interfaces between tools Homogeneous mechanism for communication between SW engineer and each tool An effective approach that will enable I-CASE to move among various HW platforms and OS. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 15
Integration Architecture User interface layer Interface tool kit Presentation protocol Tools mgt services CASE tool Tools layer Object mgt layer Integration services Configuration mgt services Shared repository layer CASE database Access control functions Architectural model for the integration framework[pressman] These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 16
CASE repository n n REPOSITORY = a centralized database that contains all diagrams, forms & report definitions, data structure, data definitions, process flows & logic, and definitions of other organizational and system components it provides a set of mechanisms and data structures that achieve data/tool and data/data integration These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 17
CASE repository Function Information sharing Data integrity Data/tool integration CASE repository functions Methodology enforcement Data/data integration Document These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided standardization with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 18
CASE repository Function…cont n Data Integrity • include functions to validate entries to the repository • ensure consistency among related objects • automatically perform ‘cascading’ modifications when a change to one object demands some change to objects that are related to it These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 19
CASE repository Function…cont n Information sharing • provides a mechanism for sharing information among multiple developers and between multiple tools, managers and controls multi-user access to data and locks/unlocks objects so that changes are not overlaid on one another. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 20
CASE repository Function…cont n Data-tool integration • establish a data models that can be accessed by all tools in the I-Case environment, control access to that data, and perform appropriate configuration management functions. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 21
CASE repository Function…cont n Data Integration • the database management system relates data objects so that other function can be achieved. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 22
CASE repository Function…cont n Methodology enforcement • the ERD model of data stored in the repository can imply a specific paradigm for SE at a minimum , the relationships and objects define a set of steps that must be conducted to build the contents of the repository. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 23
CASE repository Function…cont n Document standardization • the definition of objects in the database leads directly to a standard approach for the creation of SE documents. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 24
References n n Pressman, R. (2003). Software Engineering: A Practitioner's Approach. 6 th & 5 th edition. New York: Mc. Graw-Hill. Somerville I. (2001). Software Engineering. 6 th edition. Addison Wesley ~The End ~ These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R. S. Pressman & Associates, Inc. , copyright © 1996, 2001, 2005 25
- Cse 3302
- Real time software design in software engineering
- Software design fundamentals in software engineering
- What is domain testing
- Kv charts in software testing
- Data flow testing strategies in software testing
- Globalization testing example
- Language testing
- Control structure testing in software engineering
- Decision table testing in software testing
- What is decision table testing
- Decision table based testing in software testing
- Rigorous testing in software testing
- Testing blindness in software testing
- Domain testing example
- User testing software engineering
- Types of testing in software engineering
- Interface testing in software engineering
- Interface testing
- User testing software engineering
- Testing activities in software engineering
- Cluster testing in software engineering
- Testing types in software engineering
- Basis path testing
- What is regression testing in software engineering
- What is unit testing in software