Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
System Analysis and Design (Health Informatics)
1. Colonel Zulfiquer Ahmed Amin
M Phil, MPH, PGD (Health Economics), MBBS
Armed Forces Medical Institute (AFMI)
2.
3.
4. INTRODUCTION
System Analysis and Design (SAD), deals with the software
development activities.
In business, System Analysis and Design refers to the process of
examining a business situation with the intent of improving it
through better procedures and methods.
5. System Analysis and Design (SAD)
Systems Analysis and Design (SAD) is a broad term for describing
methodologies for developing high quality Information System
which combines Information Technology, People and Data to
support business requirement.
Definition: SAD is the complex organizational process whereby
computer-based information systems are developed and
maintained.
5
6. System Analysis and Design (SAD)
Analysis:
- Defining the problem
- From requirements to specification
Design:
- Solving the problem
- From specification to implementation
6
7.
8. - A method of studying a system by examining its component parts
and their interactions.
- Understanding and specifying in detail what an information system
should do.
- The major objectives of systems analysis are to find answers for
each business process: What is being done, How is it being done,
Who is doing it, When is he doing it, Why is it being done and How
can it be improved?
- It attempts to give birth to a new efficient system that satisfies the
current needs of the user and has scope for future growth.
System Analysis
9.
10. System Design
Based on the user requirements and the detailed analysis of the
existing system, the new system must be designed. It is the most
crucial phase in the developments of a system. Specifying in detail
how the parts of an information system should be implemented.
Normally, the design proceeds in two stages:
l. Preliminary or General Design
l l. Structured or Detailed Design
11. Preliminary or General Design:
In the preliminary or general design, the features of the new
system are specified. The costs of implementing these features and
the benefits to be derived are estimated. If the project is still
considered to be feasible, we move to the detailed design stage.
Structured or Detailed Design:
At this stage, the design of the system becomes more structured.
Structure design is a blue print of a computer system solution to a
given problem.
15. SYSTEM LIFE CYCLE
Businesses and organizations use various types of information
systems to support the many processes needed to carry out their
business functions. Each of these information systems has a
particular purpose or focus, and each has a life of its own. This “life
of its own” concept is called the systems development life cycle or
SDLC, and it includes the entire process of planning, building,
deploying, using, updating, and maintaining an information system.
These activities, or phases, usually include planning, analysis,
design, implementation, and maintenance/support.
Traditionally, the systems-development life cycle consisted of five
stages. That has now increased to seven phases. Increasing the
number of steps helped systems analysts to define clearer actions to
achieve specific goals.
16. 16
SYSTEMS(SOFTWARE) DEVELOPMENT LIFE CYCLE (SDLC)
Standard model used world wide to develop a software.
Necessary to ensure the quality of the software.
Logical steps taken to develop a software product.
17.
18.
19.
20. Planning
This is the first phase in the systems development process. It
identifies whether or not there is the need for a new system to be
developed. The company might be trying to meet or exceed
expectations for their employees, customers and stakeholders too.
The purpose of this step is to find out the scope of the problem and
determine solutions. Resources, costs, time, benefits and other
items should be considered at this stage.
21. Systems Analysis and Requirements
In the event of a problem, possible solutions are submitted and
analyzed to identify the best fit for the ultimate goal(s) of the
project.
It is also where system analysis takes place—or analyzing the needs
of the end users to ensure the new system can meet their
expectations.
22. Systems Design
The third phase describes, in detail, the necessary specifications,
features and operations that will satisfy the functional requirements
of the proposed system which will be in place.
Included are the design or configuration of the network (hardware,
operating system, programming, etc.), design of user interfaces
(forms, reports, etc.), design of system interfaces (for
communication with other systems), and security issues.
23. Development
The fourth phase is when the real work begins—in particular, when
a programmer, network engineer and/or database developer are
brought on to do the major work on the project. This work includes
using a flow chart to ensure that the process of the system is
properly organized. The development phase marks the end of the
initial section of the process. Additionally, this phase signifies the
start of production.
24. Integration and Testing
The fifth phase involves systems integration and system testing (of
programs and procedures)—normally carried out by a Quality
Assurance (QA) professional—to determine if the proposed design
meets the initial set of business goals. Testing may be repeated,
specifically to check for errors, bugs and interoperability. This testing
will be performed until the end user finds it acceptable. Another
part of this phase is verification and validation.
25. Implementation
This phase involves the actual installation of the newly-developed
system. This step puts the project into production by moving the
data and components from the old system and placing them in the
new system. Both system analysts and end-users should now see the
realization of the project that has implemented changes.
26. Operations and Maintenance
The seventh and final phase involves maintenance and regular
required updates. This step is when end users can fine-tune the
system, if they wish, to boost performance, add new capabilities or
meet additional user requirements.
Maintenance is necessary to eliminate errors in the system during its
working life and to tune the system to any variations in its working
environments.
29. Methodologies of System Development (Approaches):
- Data Oriented
- Object Oriented
- Process Oriented
30. Process Oriented
A business process is also defined as a work activity in a specific
order, at an exact time and place, and with a specified beginning and
end, and clearly identified inputs and outputs.
Example, Transactions-Based Applications:
- Accounts Payable
- Accounts Receivable
- Payroll
- Inventory Control
32. Object Oriented:
In object-oriented programming, program is splitted into several
small, manageable, reusable programs, including visual modeling.
Each small program communicates with the rest of the other small
programs.
Object-oriented (O-O) analysis and design is an approach that is
intended to facilitate the development of systems that must change
rapidly in response to dynamic business environments. OOAD in
modern software engineering is best conducted in an iterative and
incremental way.
This fosters better product quality and even encouraging stakeholder
participation and communication. Example: Multimedia (Integration
of Text, Video, Sound, Pictures, Animation)
35. Waterfall model is the earliest SDLC approach that was used for
software development.
Imagine a waterfall on the cliff of a steep mountain. Once the water
has flowed over the edge of the cliff and has begun its journey down
the side of the mountain, it cannot turn back.
The waterfall model emphasizes that a logical progression of steps be
taken throughout the software development life cycle (SDLC), much
like the cascading steps down an incremental waterfall. The waterfall
Model illustrates the software development process in a linear
sequential flow.
36. This means that any phase in the development process begins only if
the previous phase is complete. In this waterfall model, the phases
do not overlap. Once a phase of development is completed, the
development proceeds (drops over the waterfall) into the next phase
and there is no turning back.
The advantage of waterfall development is that it allows for
departmentalization and managerial control. A schedule can be set
with deadlines for each stage of development and a product can
proceed through the development process like a car in a carwash,
and theoretically, be delivered on time.
37. Development moves from concept, through design, implementation,
testing, installation, troubleshooting, and ends up at operation and
maintenance. Each phase of development proceeds in strict order,
without any overlapping or iterative steps.
The disadvantage of waterfall development is that it does not allow
for much reflection or revision. Once an application is in the testing
stage, it is very difficult to go back and change something that was
not well-thought out in the concept stage. This pure waterfall model
makes it very difficult because there is no room for error and that is
virtually impossible when dealing with humans.
38. Pros and Cons of waterfall model:
Advantages of using Waterfall model are as follows:
- Simple and easy to understand and use.
- For smaller projects, waterfall model works well and yield the
appropriate results.
- Since the phases are rigid and precise, one phase is done one at a
time, it is easy to maintain.
- Results are well documented.
39. Disadvantages of using Waterfall model:
- Cannot adopt the changes in requirements.
- It becomes very difficult to move back to the phase. For example,
if the application has now moved to the testing stage and there is a
change in requirement, It becomes difficult to go back and change
it.
- For bigger and complex projects, this model is not good as a risk
factor is higher.
- Not suitable for the projects where requirements are changed
frequently.
- Does not work for long and ongoing projects.
41. Systems Development Life Cycle
41
Project Identification
and Selection
Project Initiation
and Planning
Analysis
Physical Design
Implementation
Maintenance
Logical Design
Waterfall Model
The waterfall model is the oldest
and most widely used model in
the field of software development.
42. Systems Development Life Cycle (cont.)
Purpose --Preliminary understanding
Deliverable –Request for project
Project Identification
and Selection
Project Initiation
and Planning
Analysis
Physical Design
Implementation
Maintenance
Logical Design
43. Systems Development Life Cycle (cont.)
Purpose – State situation and solution
Deliverable – Request for analysis
Project Identification
and Selection
Project Initiation
and Planning
Analysis
Physical Design
Implementation
Maintenance
Logical Design
44. Systems Development Life Cycle (cont.)
Purpose – Thorough analysis
Deliverable – Functional system specifications
Project Identification
and Selection
Project Initiation
and Planning
Analysis
Physical Design
Implementation
Maintenance
Logical Design
45. Systems Development Life Cycle (cont.)
Purpose – information requirements structure
Deliverable – detailed design specifications
Project Identification
and Selection
Project Initiation
and Planning
Analysis
Physical Design
Implementation
Maintenance
Logical Design
46. Systems Development Life Cycle (cont.)
Purpose – Develop technology specs
Deliverable – Program/data structuresProject Identification
and Selection
Project Initiation
and Planning
Analysis
Physical Design
Implementation
Maintenance
Logical Design
47. Systems Development Life Cycle (cont.)
Purpose – Programming, testing
Deliverable – Operational programsProject Identification
and Selection
Project Initiation
and Planning
Analysis
Physical Design
Implementation
Maintenance
Logical Design
48. Systems Development Life Cycle (cont.)
Purpose – Monitor, repair, enhance
Deliverable – Periodic audits
Project Identification
and Selection
Project Initiation
and Planning
Analysis
Physical Design
Implementation
Maintenance
Logical Design
49. Systems Development Life
Cycle
Project Identification
and Selection
Project Initiation
and Planning
Analysis
Physical Design
Implementation
Maintenance
Logical Design
Project modeling
Conceptual data modeling
Logical database design
Physical database design and
definition
Database implementation
Database maintenance
Database Development
Process
50. ADVANTAGES & DISADVANTAGES:
Advantages:
Linear model.
Documentation.
Testing (software coding).
Disadvantages:
Unidirectional.
Unclear requirements
lead to confusion.
Client’s approval is in the
final stage.
51. Spiral Model
The spiral model is one of the newer adaptive approaches to the
SDLC. Basically, an adaptive approach is a development approach
which will include project activities such as plans and models that
are adjusted as the project progresses. The spiral model includes
several adaptive features that will cycle over and over through the
development of the project until the completion of the project.
53. Advantages & Disadvantages:
• Advantages:
– It is used in large and
complicated projects.
– Adaptability with
changes.
– Testing at each phase.
• Disadvantages:
– Works on complicated
projects only.
– An experienced and
skilled team are
required.
54. Agile Model
Agile as the name refers implies something to do very quickly. Hence
Agile Testing refers to validate the client requirements as soon as
possible and make it customer friendly.
Agile SDLC model is a combination of iterative and incremental
process models with focus on process adaptability and customer
satisfaction by rapid delivery of working software product. This
results in small incremental releases with each release building on
previous functionality. Each release is thoroughly tested to ensure
software quality is maintained. It is used for time critical applications.
55. Agile Methods break the product into small incremental builds.
These builds are provided in iterations. Each iteration typically lasts
from about one to three weeks. Every iteration involves cross
functional teams working simultaneously on various areas like −
- Planning
- Requirements Analysis
- Design
- Coding (Implementation)
- Testing and
- Acceptance Testing.
At the end of the iteration, a working product is displayed to the
customer and important stakeholders.
60. Key Features of Agile Software Development
• Iterative.
• Active Customer involvement.
• Fixed Time.
• Priority based delivery.
61. Advantages & Disadvantages:
Advantages:
– Customer Satisfaction.
– Saves Time.
– Testing.
– Suitable for fixed or
changing
requirements.
Disadvantages:
– Not suitable for handling
complex dependencies.
– More risk of sustainability,
maintainability and extensibility.
– Strict delivery management
dictates the scope, functionality
to be delivered, and adjustments
to meet
the deadlines.