Unit 1.1.the Systems Development Environment
Unit 1.1.the Systems Development Environment
Instructor
Chaturbhuj Bhatt
[email protected]
Introduction: System
2
Subsystem Subsystem
Inputs Outputs
Subsystem
Feedback
System boundary
System environment
Introduction: Element of the System
3
Control :
The control elements guide the system.
It is the decision-making subsystem that controls the pattern
of activities governing input ,processing and output.
Feedback:
Control in a dynamic system is achieved by feedback.
It measures output against a standard in some form that
includes communication and control.
It may be positive or negative routine or information.
Introduction: Element of the System
5
Environment:
It is the sources of the external elements that influence on the
system.
It determines how a system must function.
Boundaries and interface:
A system should be defined by its boundaries- the limits that
identify its components, process and interrelationship when it
interfaces with another system.
Introduction: System Characteristics
6
Organisation:
It implies structure and order. It is the arrangement of components
that helps to achieve objectives.
Interaction:
It refers to the manner in which each component functions with
other component of the system.
In an organisation, for example, purchasing must interact with
production, advertising with sales, etc.
Interdependence:
It means that parts of the organisation or computer system depend
on one another.
They are coordinated and linked together according to a plan.
One subsystem depends on the input of another subsystem for
proper functioning.
Introduction: System Characteristics
7
Integration:
it refers to completeness of systems.
It is concerned with how a system is tied together.
It is more than sharing a physical part or location.
It means that part of a system work together within the system
even though each part performs a unique function.
Central Objective:
Objective may be real or stated.
Introduction: Information System
8
14
15
Methodologies
Techniques Tools
Planning
Maintenance Analysis
Implementation Design
Planning
Identify, analyze, prioritize and arrange IS needs
Analysis
Study and structure system requirements
Design
Convert recommended solution to system specifications
Logical design: functional features described
independently of computer platform
Physical design: logical specifications transformed to
technology-specific details
Developing IS and the SDLC: Phases
26
Implementation
Code, test, install, and support the information system
Maintenance
Systematically repair and improve the information system
Developing IS and the SDLC: Product of SDLC
Phases
27
Phase Products, Outputs, or Deliverables
Planning Priorities for systems and projects; an architecture for data, networks, and selection
hardware, and information systems management are the result of associated systems
Detailed steps, or work plan, for project
Specification of system scope and planning and high-level system requirements or features
Assignment of team members and other resources
System justification or business case
Analysis Description of current system and where problems or opportunities exist, with a general
recommendation on how to fix, enhance, or replace current system
Explanation of alternative systems and justification for chosen alternative
Design Functional, detailed specifications of all system elements (data, processes, inputs, and
outputs)
Technical, detailed specifications of all system elements (programs, files, network, system
software, etc.)
Acquisition plan for new technology
Implementation Code, documentation, training procedures, and support capabilities
Maintenance New versions or releases of software with associated updates to documentation, training, and
support
The Heart of the Systems Development Process
28
Analysis Planning
Mainteinance Analysis
Design
Test
Implementation Design
Code
Planning
Analysis
Logical Design
Physical Design
Implementation
Maintenance
Diagram Tools:
It helps in diagrammatic and graphical representations of
the data and system processes.
It represents system elements, control flow and data flow
among different software components and system structure
in a pictorial form.
For example, Flow Chart Maker tool for making state-of-
the-art flowcharts.
Computer Display and Report Generators:
It helps in understanding the data requirements and the
relationships involved.
Case Tools: Types
38
Analysis Tools:
It focuses on inconsistent, incorrect specifications involved
in the diagram and data flow.
It helps in collecting requirements; automatically check for
any irregularity, imprecision in the diagrams, data
redundancies or erroneous omissions.
Central Repository:
It provides the single point of storage for data diagrams,
reports and documents related to project management.
Case Tools: Types
39
Documentation Generators:
It helps in generating user and technical documentation as
per standards.
It creates documents for technical users and end users.
For example, Doxygen, DrExplain, Adobe RoboHelp for
documentation.
Code Generators:
It aids in the auto generation of code, including definitions,
with the help of the designs, documents and diagrams.
Case Tools: Advantages
40
Introduction
Prototyping
Spiral
Rapid Application Development (RAD)
Introduction to Agile Development
Introduction
44
Start Stop
Requirement Engineer
Gathering Product
Refining
Quick Design
Prototype
Building
Prototype User Evaluation
Prototyping Model
Prototyping: Phases
48
Requirements Gathering:
Requirements of the system are defined in detail.
The user is interviewed in order to know the requirements of
the system.
Quick Design:
When requirements are known, a preliminary design or quick
design for the system is created.
It is not a detailed design and includes only the important
aspects of the system, which gives an idea of the system to the
user.
A quick design helps in developing the prototype.
Prototyping: Phases
49
Build Prototype:
Information gathered from quick design is modified to form
the first prototype, which represents the working model of the
required system.
User Evaluation:
Proposed system is presented to the user for thorough
evaluation of the prototype to recognize its strengths and
weaknesses.
Comments and suggestions are collected from the users and
provided to the developer.
Prototyping: Phases
50
Refining Prototype:
User evaluates the prototype and if he is not satisfied, the
current prototype is refined according to the requirements.
A new prototype is developed with the additional information
provided by the user.
The new prototype is evaluated just like the previous prototype.
This process continues until all the requirements specified by
the user are met.
Once the user is satisfied with the developed prototype, a final
system is developed on the basis of the final prototype.
Prototyping: Phases
51
Engineer Product:
The user accepts the final prototype.
The final system is evaluated thoroughly followed by the
routine maintenance on regular basis for preventing large-scale
failures and minimizing downtime.
Prototyping: Advantages
52
The customers get to see the partial product early in the life
cycle. This ensures a greater level of customer satisfaction and
comfort.
New requirements can be easily accommodated as there is
scope for refinement.
Missing functionalities can be easily figured out.
Errors can be detected much earlier thereby saving a lot of
effort and cost, besides enhancing the quality of the software.
The developed prototype can be reused by the developer for
more complicated projects in the future.
Flexibility in design.
Prototyping: Disadvantages
53
The RAD design workshop is the heart of the interactive development process
RAD: Phases
61
Exploration
During exploration, analyst will explore your environment,
asserting conviction that the problem can and should be
approached with agile development, assemble the team,
and assess team member skills.
This stage will take anywhere from a few weeks to a few
months.
Analyst will be actively examining potential technologies
needed to build the new system.
During this stage analyst should practice estimating the
time needed for a variety of tasks.
Development Process of Agile Project:
Phases
70
Planning
In contrast to the first stage, planning may only take a few
days to accomplish.
In this stage analyst and the customers agree on a date
anywhere from two months to half a year from the current
date to deliver solutions to their most pressing business
problems.
If analyst’s exploration activities were sufficient, this stage
should be very short.
Development Process of Agile Project:
Phases
72
The planning game spells out rules that can help formulate
the agile development team’s relationship with their
business customers.
They are a basis for building and maintaining a
relationship.
The goal of the game is to maximize the value of the
system produced by the agile team.
The strategy pursued by the agile development team is
always one of limiting uncertainty (downplaying risk).
To do that they design the simplest solution possible, put
the system into production as soon as possible, get
feedback from the business customer about what’s working,
and adapt their design from there.
Development Process of Agile Project:
Phases
73
Productionizing
The feedback cycle speeds up so that rather than receiving
feedback for an iteration every three weeks, software
revisions are being turned around in one week.
Analyst may institute daily briefings so, everyone knows
what everyone else is doing.
The product is released in this phase, but may be improved
by adding other features.
Development Process of Agile Project:
Phases
76
Maintenance
Once the system has been released, it needs to be kept
running smoothly.
New features may be added, riskier customer suggestions
may be considered, and team members may be rotated on
or off the team.
The attitude you take at this point in the developmental
process is more conservative than at any other time.
Introduction to Agile Development:
Advantages
78
Thank You