Modern Approaches of Systems Development By: Hanouf AL-Monawer Sara Mohammed
Outline: Introduction Prototyping Case Tools Rapid application development (RAD) Joint Application Development (JAD)
Introduction SDLC SDLC Phases
Prototyping Prototyping is iterative process of system development in which requirements are converted to a working system that is continually revised through close collaboration between analyst and users.
Prototyping does have its perils these include: Standardization Distraction Rejection
Prototype Phases
There can be many reasons that a prototype does not achieve its goals. Prototyping must be iterative
The advantages of rapid prototyping include: Fast cycles Early user testing Enhanced communication within the development organization Enhanced feedback to users.
CASE Tools Computer-Aided Software Engineering (CASE) Tools is software tools that provide automated support for some portion of the system development process.
Reasons to adopt CASE : Shorter development time. Improve productivity, quality, worker skills and management. Reasons to reject CASE High cost of purchasing CASE and training personnel. Low organizational confidence in the IS department. Threat to job security Lack of confidence in CASE products
Components of CASE tool
CASE Tools types Diagramming Tools “creation of graphical representation”. Form & report generators "creation of system forms & reports”. Analysis tools “enable automatic checking for incomplete”. Documentation generators “enable the easy production of both technical & user documentation”.
Examples of CASE usage within the SDLC SDLC PhasesCASE Tool Usage Project Identification and selectionDiagramming tools to create and structure information Project initiation and planningDocumentation generators to develop project plans AnalysisDiagramming to create process, logic and data model Logical and Physical DesignForm and report generators to prototype designs ImplementationAnalysis and Form & report generators to develop system MaintenanceAll tool are used
Rapid Application Development (RAD) A software development process that allows usable systems to be built in as little as days.
To RAD or not to RAD: Project Scope Project Data Project Decisions Project Team
Why Use RAD ? To meet the design acceptable to the customer early. To limit a project's exposure to the forces of change. To save development time.
Characteristics of RAD RAD USES HYBRID TEAMS: Teams should consist of about 6 people, including both developers and full-time users of the system plus anyone else who has a stake in the requirements. Developers chosen for RAD teams should be multi- talented.
Advantages of RAD Buying may save money compared to building Greater flexibility Increased user involvement Possibly fewer defects Possibly reduced cost
Disadvantages of RAD Buying may not save money compared to building Loss of scientific precision Requirements may not converge
Joint Application Development (JAD) Definition
Components of JAD Executive Sponsor Project Leader/manager Recorder/Documentation Expert Participants
Guidelines for Successful JAD Get the right people. Set clear defined, well understood and obtainable goals or objectives. Produce Final Document Quickly
Benefits of JAD Reduced system development time and cost Improved system quality and productivity Enhanced relationship between end-users and IT personnel Enhanced education for participants
Thank You For Listening Any Questions?