CaSe To0ls InSySteMDeVeLoPmEnTVivek KathayatMbadu Yashica
COMPUTER AIDED SYSTEMSENGINEERING(CASE)CASE is a term coveringa whole range of toolsand methods thatSUPPORT SOFTWARESYSTEM DEVELOPMENT.
WHAT IS CASE TOOLS?CASE tools are programs(software) thatautomate or support oneor more phases of asystems development lifecycle.
WHY CASE IS USED? Increasing costs of software developmentdue to the extreme intensive laborrequired. Avoid simple human errors in softwaredevelopment. CASE offers an important opportunity toalleviate the problems of applicationdevelopment and maintenance.
TYPES OF CASE TOOLS Upper-CASE:- describes tools thatautomate or support the ‘upper’ orearliest phases of systems development Lower-CASE:- describes tools thatautomate or support the ‘lower’ or laterphases of systems development I-CASE (integrative case):- support theentire SDLC
CASE TOOL and METHODCATEGORIESData ModellingRefactoring toolsSource code generationUnified Modelling LanguageDocumentation
Data ModelingWhat is Data Modeling?A method that defines datarequirements as data modelsrepresenting the business processes ofthe system.
Refactoring What Is It?The process of modifying a systemsinternal structure without changing itsexternal behavior and functionalityCan be thought of as a special typeof Program Transformation Example -RENAMING A CLASS!
Source code generation What is It……..Oh wait, That’s easy! Simple DescriptionSource Code Generation is thegeneration of code. Better DescriptionMethod for generating code based on anontological model of the source languagecontaining language concepts and theirrelationships
Source code generation How it improves Software Quality Human Error does not mix well with coding Developer benefited by automaticsuggestions ofvariables, classes, components, etcmeaning less risk of errors Generated code can be almost alwaysguaranteed as correctly written
Unified Modeling Language What is It? Standardized general-purpose visualizingmodeling language Combine multiple methods of modeling anddiagrams to form a comprehensive whole What is it used for? Used to construct and document objectsand object-oriented systems Equivalent to a blueprint for a building butwith the blueprint representing software
Documentation What is It? Documentation tools allow thecreation, modification, and updating ofsystem documentation Compared to other CASE tools these areconsiderably more basic, however thisshouldn’t be taken as useless! Documentation tools can be used to – Generate standard forms Auto correct spelling mistakes Improve layout Generate documentation automatically
Documentation Why it benefits Software Quality? Documentation details the system and itsdevelopment, if there’s a problem gooddocumentation is invaluable for findingrecent modifications or solving the error Use of tools results in a more polisheddocument, one that is a higher-quality It can create documentation from code(such as Class Definitions) that accuratelydepicts the codes functions with a depth ofdetail a human developer couldn’t achievewithout more time
CASE tool supportRequirements storageRequirements should be managed in asecure, managed data store.Change managementThe process of change management is aworkflow process whose stages can be definedand information flow between these stagespartially automated.Traceability managementAutomated retrieval of the links betweenrequirements.
CASE ToolRepositoryHeart of CASE tool is thecentral repository.Stores all the informationtoanalyze, create, designand modify anapplication fromfeasibility toimplementation andmaintenance.
CASE Repository FunctionsData-data integrationdatabase management system allowingaccess to related objects so functions canbe achieved.Methodology enforcementE-R model used to define steps needed tobe conducted to build the repository contents.Document standardizationdefinition of objects in the database leadsdirectly to a standard approach for creation ofengineering documents.
CASE Repository FunctionsData integrityIncludes functions to validate entries to therepository and ensure consistency among relatedobjectsInformation sharingprovides mechanism for sharing informationamong multiple developers and multipletools, controls modification of informationData-tool integrationestablishes shared data model and performsconfiguration management functions
CASE Tool Components
The Good and Bad Newsabout CASE Development processproductivity and qualityincreases are realizable Portability of new systemsto other platforms isgreatly enhanced Analyst skill set willimprove due to greaterunderstanding of theprocess Time to delivery of newapplications will decrease Conformity todevelopment standardswill increase CASE acquisition costsare extremely high Training of analysts andadministrators is costlyand time-consuming Most organizations do nothave clear standards forapplication development CASE tools can beviewed as a threat to jobsecurity CASE tools do not have agreat reputation due toearly benefits not beingrealized
CASE Summary Overall use of CASE tools on a software systemimproves software quality dramatically by – Reducing errors Improving designs throughout the development Standardizing many tasks and developmentaspects Providing many many well-tested automatedfunctions Centralizing resources CASE is so good for software development itsextremely rare to find a program that doesn’tinclude some form of it within the last 2 decades
QUIZ What is the full form of CASE ?a. Computer Aided System Engineeringb. Computer Aided Shooting Engineerc. Computer Aided System Development
Quiz What is the full form of UML .a. Universal Modelling Language .b. Unified Modelling Language .c. Universal Modified Language .