Course ID: CSE - 471 Course Title: System Analysis And: Design
Course ID: CSE - 471 Course Title: System Analysis And: Design
Course Teacher:
Dr. Muhammad Iqbal Hossain
Assistant professor
Department of Computer Science & Engineering
BRAC University.
Segment 1:What is System analysis and design
Segment 2: Software lifecycle
Segment 3: Structured design Methodologies
Segment 4: Rapid development Methodologies
Segment 5: Project Team Roles and Skills
2
Task for students
• Every student need to attend the online lectures in every week.
• While proceeding with the video lectures there might be pop-
up quizzes, segment quiz etc. You need to participate in those
quizzes to proceed to next lecture. Please note that these
quizzes will be used for evaluation. So listen the lectures
carefully and take the quiz.
• Faculties will be available ONLINE (google meets) in the class
time (according to the USIS) where students can join and
discuss different topics, difficulties etc. You will be provided the
link to join. Make sure you have finished the online lecture
before joining the class meeting.
• Assignment needs to be submitted by the provided deadline.
3
Segment 1
What is System analysis and design
4
Information System
5
Components of information systems
• Hardware- these are the devices like the monitor, processor, printer
and keyboard, all of which work together to accept, process, show
data and information.
• Software- are the programs that allow the hardware to process the
data.
• Databases- are the gathering of associated files or tables containing
related data.
• Networks- are a connecting system that allows diverse computers to
distribute resources.
• Procedures- are the commands for combining the components above
to process information and produce the preferred output.
6
The Bad News
• 30% of large IT projects are cancelled before completion
• 50% of IT projects are over-budget by more than 200%
• The majority of completed projects deliver 60% or less of
prescribed functionality
• Many delivered information systems are under-used
because they don’t meet user needs and/or expectations
• Legacy systems are a serious and growing bottleneck to
organizational evolution
7
Software Horror Stories
• Bank of America spent $23,000,000 on a 5-year project to
develop a new accounting system. Spent over $60,000,000
trying to make new system work, finally abandoned it. Loss
of business estimated in excess of $1,000,000,000
8
Why is this Course Important?
9
10
Key Ideas
11
Key Ideas
12
What is System Analysis?
13
Need for Systems Analysis?
14
Segment 2
Software lifecycle
Major Attributes of the Lifecycle
•The project
•Moves systematically through phases
where each phase has a standard set of
outputs
•Produces project deliverables
•Uses deliverables in implementation
•Results in actual information system
•Uses gradual refinement
16
Project Phases
•Planning
• Why build the system?
•Analysis
• Who, what, when, where will the system be?
•Design
• How will the system work?
•Implementation
• System delivery
17
Planning
•Identifying business value
•Analyze feasibility
•Develop work plan
•Staff the project
•Control and direct project
18
Analysis
• Analysis strategy
• Analysis of current system
• Ways to design new system
• Requirements gathering
• Interviews, questionnaires
• Process modeling
• Data modeling
19
Design
• Architectural design
• Hardware
• Software
• Network infrastructure
• Interface design
• Database and file design
• Program design
20
Implementation
• Construction
• Writing programs
• Testing
• Installation
• Replace old with new system
• Training users
• Support Plan
21
Processes and Deliverables
Process Product
Design System
Specification
22
What Is a Methodology?
•Methodology categories:
•Process-centered
•Data-centered
•Object-oriented
23
Need for methodology
24
Systems development
methodologies
•Structured Design
•Waterfall Development
•Parallel Development
•Rapid Application Development (RAD)
•Phased Development
•Prototyping
•Agile Development
•Extreme Programming
25
Segment 3
Structured design Methodologies
26
Structured Design
27
Waterfall Development Method
28
Pros and Cons of the Waterfall
Method
Pros Cons
29
Parallel Development
30
Pros and Cons of the Parallel
Method
Pros Cons
31
Segment 4
Rapid development Methodologies
32
Rapid Application Development
•Critical elements
•CASE tools (Computer-Aided Software
Engineering (CASE))
•JAD sessions (Joint Application Design)
•Fourth generation/visualization
programming languages
•Code generators
33
Rapid Application Development
Categories
•Phased development
•A series of versions
•Prototyping
•System prototyping
•Throw-away prototyping
•Design prototyping
•Agile Development
•Extreme Development
34
Phased development
35
Pros and Cons of Phased
development
Pros:
1. Users gain early process and software knowledge now that
they can use in the subsequent phases.
2. Issues with one phase only affect a small area of the
business
3. Core project team can learn from the initial phases and use
their new found knowledge for subsequent phases.
Cons:
4. Project duration for full implementation is long
5. If you are on a tight/limited budget this can prove costly.
6. Need to supply critical modules which will be integrated at
the end.
36
How Prototyping Works
37
Pros and Cons of Prototyping
Pros:
1. Users are actively involved in the development
2. Since in this methodology a working model of the system is
provided, the users get a better understanding of the system
being developed.
3. Errors can be detected much earlier.
4. Quicker user feedback is available leading to better solutions.
5. Missing functionality can be identified easily
Cons:
6. Practically, this methodology may increase the complexity of
the system as scope of the system may expand beyond original
plans.
7. Incomplete application may cause application not to be used as
the full system was designed 38
Throwaway Prototyping
39
Pros and Cons of Throwaway
Prototyping
Pros:
1. it is very cost-effective.
2. Throwaway Prototyping model uses a series of prototypes to
detect and forecast possible problems, it can prevent these from
taking place as soon as the product or service is introduced to
the market.
3. Project completion is quick. Since it allows early detection of
issues, the transition from one step to the next will be smoother
and faster.
Cons:
4. Since the process involved in prototyping is done in rapid
speed, it is possible that a lot of aspects can be overlooked.
5. Confusion on the part of users and developers can also occur
because it is likely to get so used to the prototype that
differentiating it from the real one can become a challenge. 40
Extreme Programming
Perhaps the best-known and most widely used agile
method.
41
Extreme Programming
42
What is DevOps?
DevOps = development & operations
A Methodology of Continuous Delivery
A software development method that stresses
communication, collaboration and integration between
development and IT professionals.
“Streamlining release process” .
43
DevOps vs. Agile
• DevOps is especially complementary to the Agile software development
process.
• extends and completes the continuous integration and release process by
ensuring that code is production ready and will provide value to the
customer
• DevOps enables a far more continuous flow of work into IT Operations.
• If development delivers code every two weeks but it's deployed only every
two months, customers don't get value and the deployments often result in
chaos and disruption.
44
Selecting the Appropriate Methodology
45
Criteria for Selecting a Methodology
46
Segment 5
Project Team Roles and Skills
Information Systems Roles
•Business analyst
•System analyst
•Infrastructure analyst
•Change management analyst
•Project manager
48
Project Team Roles
49
Summary -- Part 1
50
Summary -- Part 2
•There are five major team roles: business analyst,
systems analyst, infrastructure analyst, change
management analyst and project manager.
51