case tools and modern process of system development
TRANSCRIPT
CASE Tools and Modern Process of System Development
Submitted by:RADHIKA GANDOTRA (45-MBA-15)
SAHIL SHARMA (49-MBA-15)SATYA DEV SINGH (52-MBA-15)
TUSHAR GUPTA (65-MBA-15)VIDHU ARORA (68-MBA-15)
CONTENTS
• Introduction about CASE Tools• Architecture of CASE Tools• Types of CASE Tools• Components of CASE Tools• Perspectives of CASE Tools• Categories of CASE Tools• Benefits & Problems of CASE Tools• Modern Processes Of System Development
CASE Tools stands for Computer Aided Software Engineering Tools
CASE Tools are used by software project managers, analysts and engineers to develop & maintain software system.
It should support all kinds of activities which are required in software engineering process.
CASE Tools should provides support to a software by
• Automated software tools• Providing information about the software .
Currently these tools are used in every phase of SDLC / workflow
• Improve Quality of system• Improve management of the project system
Architecture of CASE Tools
Types of CASE Tools
•(front-end tools)– Assist developer during
requirements, analysis, & design workflows or activities.
– An example of this type of tools is the excelerator-based on structured analysis.
Upper CASE Tools
• (Back-end tools)– Assist with implementation, testing, and
maintenance workflows or activities.– Aim is to increase the reliability,
adaptability and productivity of the code.– Support Programming and Integration tasks– 4GLs may be considered as back end CASE‐
Tools eg.TELON.
• (I-CASE)– Aims to support the whole development
cycle.– Supports both Upper CASE Tools & Lower
CASE Tools.– They are complex and expensive. – eg. IEF and IEW.
Lower CASE Tools
Integrated CASE Tools
Components Of CASE Tools
Components Of CASE Tools1. Central Repository / Centralized Database
– Used to store graphical diagrams, prototype forms and reports during analysis and design workflows.
– Allows easy sharing of information between tools and SDLC activities. – Act as :
Information Repository Data Dictionary
2. Report Generator– Used to Create, modify and test prototypes of reports.– Identify which data items to display or collect for each screen or
report.
3. Process Modeling Tool– help the managers to choose a process model or modify it as per the
requirement of software product. – For example : EPF Composer
4. Diagramming Tool – Allow you to represent a system and its components visually.– Allows higher level processes to be decomposed easily.– Can examine processes or data models at high or low level.– For example : Flow Chart Maker tool
5. Analysis tools– Generate reports that help identify possible inconsistencies,
redundancies and omissions. – Generally focus on diagram completeness and consistency data structures and usage– Eg: Accept360 for requirement analysis, Visible Analyst for total
analysis.6. Documentation Tool
– Generate documents for technical users and end users.– Provide a method of managing documentation.– For example, Doxygen, DrExplain, Adobe RoboHelp for documentation.
Perspective Of CASE Tools
3 perspective :
3 Categories of CASE Tools
Tools Workbench Environment
• Tools - A product that assists in just one aspect of the production of software– Support individual process tasks– Examples: Checking the consistency of a design
• Workbenches– Collection of tools that together support:• Process workflows (requirements, design, etc.)• One or two activities where an activity is a related
collection of tasks– Commercial examples: PowerBuilder
• Environments– Support the complete software process or, at least, a
large portion of the software process.– Normally include several different workbenches which
are integrated in some way.
Benefits Of CASE Tools
1. Help standardization of notations and diagrams2. Information is illustrated through diagrams that are typically easier to understand.3. Automates the methodology – this improves consistency, but restricts creativity.4. Reduction of time and effort.5. Can reduce maintenance costs.6. Automated tools are provided to prepare documentation.7. Complexity of maintenance decreases.
Problems Of CASE Tools1. Limitations in flexibility of documentation 2. Expertise needed3.Training issues4. Not mapping to current methods orapplications.5. May lead to restriction to the tool’s capabilities6. Costs associated with the use of the tool
• Purchase price• Training
Modern Process of System Development
Modern Process of System Development
• Joint Application Design (JAD)• Rapid Application Development (RAD)• Agile Methodologies• eXtreme Programming• Object-Oriented Analysis and Design (OOAD)• Rational Unified Process (RUP)
Joint Application Design (JAD)
• Structured process involving users, analysts, and managers.
• Several-day intensive workgroup sessions.• Purpose: to specify or review system
requirements.
Uses for JAD• Application Development, Adaptation, & Selection
– Requirements– External Design/Prototypes– User Test Cases– Training– Post-Implementation Reviews
• Strategic Planning• Customer Satisfaction Session• Organization Changes• Request for Proposal Development• Curriculum Design/Development
aaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaa
aaaaaaaaaaaa
Rapid Application Development (RAD)
• Based on prototyping and iterative development with no specific planning involved.
• Focuses on gathering customer requirements, early testing of the prototypes by the customer , continuous integration and rapid delivery.
• The most important aspect for this model to be successful is to make sure that the prototypes developed are reusable .
Agile Methodologies
• Agile approaches help teams respond to unpredictability through incremental methods, iterative methods and empirical feedback.
• Three key principles :-– Adaptive rather than predictive.– Self-adaptive processes.
eXtreme Programming• Short, incremental development cycles• Automated tests.• Two-person programming teams.• Coding and testing operate together.• Advantages:– Communication between developers.– High level of productivity.– High-quality code.
Object-Oriented Analysis and Design (OOAD)
.
• Technical approach for analyzing, designing an application, system, or business.
• Consists of object-oriented paradigm and visual modelling throughout the development life cycles.
• Used for better stakeholder communication & product quality.
Rational Unified Process (RUP)• It divides the development process into four distinct
phases business modelling, analysis and design, implementation, testing, and deployment.
• RUP establishes four phase of development: inception, elaboration, construction, and transition.