0% found this document useful (0 votes)
9 views9 pages

sad lec1

The document discusses the importance of System Analysis and Design (SAD) in developing high-quality information systems that support various business functions. It outlines different methodologies in SAD, including Agile and Object-Oriented approaches, and emphasizes the significance of the System Development Life Cycle (SDLC) in the development process. Additionally, it highlights modern practices like DevOps and DevSecOps that enhance collaboration and security in software development.

Uploaded by

Thànhh Đạtt
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views9 pages

sad lec1

The document discusses the importance of System Analysis and Design (SAD) in developing high-quality information systems that support various business functions. It outlines different methodologies in SAD, including Agile and Object-Oriented approaches, and emphasizes the significance of the System Development Life Cycle (SDLC) in the development process. Additionally, it highlights modern practices like DevOps and DevSecOps that enhance collaboration and security in software development.

Uploaded by

Thànhh Đạtt
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 9

1.

Introduction
According to Scott Tilley, System analysis and design (SAD) is a step-by-step
process for developing high-quality information system. An information
system combines technology, people, and data to provide support for business
functions such as order processing, inventory control, human resources, and
many more. Some information systems handle routine day-to-day tasks, while
others can help managers make better decisions, spot marketplace trends, and
reveal patterns that might be hidden in stored data.
How information systems are important?
The world runs on information systems. Information systems form the
foundation for every major organizational activity and industry, from retail to
healthcare to manufacturing to logistics. Although advances in information
technology continually give us new capabilities, the analysis and design of
information systems is driven from an organizational perspective. An
organization might consist of a whole enterprise, specific departments, or
individual work groups. Organizations can respond to and anticipate problems
and opportunities through innovative use of information technology. Information
systems analysis and design is therefore an organizational improvement
process. Systems are built and rebuilt for organizational benefits. Benefits result
from adding value during the process of creating, producing, and supporting the
organization’s products and services. Thus, the analysis and design of
information systems is based on your understanding of the organization’s
objectives, structure, and processes, as well as your knowledge of how to exploit
information technology for advantage.
Phát Video

Questions:

1. What if an organization does not use an information system?


2. Why systems are built and rebuilt for organizational benefits?
3. Why SAD?

2. A Modern Approach to SAD


Systems analysis and design is undoubtedly a pillar in the field of Information
Systems (IS). Some researchers have even claimed that SAD is the field that
defines the Information Systems discipline and is the core of information
systems. The past decades have seen the development of Structured SAD
methodologies and Object-Oriented Methodologies. In the early 1990s, key
players in the field collaborated to develop the Unified Modeling Language and
the Unified Process. Agile approaches followed, as did other dynamic methods.
These approaches remain heavily employed in the development of
contemporary information systems. At the same time, new approaches such as
DevOps and DevSecOps continue to emerge.
DevOps is the acronym given to the combination of Development and
Operations. It refers to a collaborative approach to make the Application
Development team and the IT Operations team of an organization to seamlessly
work with better communication. It is a philosophy that encourages adopting
iterative software development, automation, and programmable infrastructure
deployment and maintenance.

Figure 1.1: Devops (www.intland.com)


DevSecOps is a collaboration framework that expands the impact of DevOps by
adding security practices to the software development and delivery process.
DevSecOps resolves the tension between DevOps teams that want to release
software quickly, and security teams that prioritize security over all else.
Today there is continued focus on developing systems for the Internet and for
firms’ intranets and extranets. More and more, systems implementation involves
a three-tier design, with the database on one server, the application on a
second server, and client logic located on user machines. Another important
development is the move to wireless system components. Wireless devices can
access Web-based applications from almost anywhere. Finally, the trend
continues toward assembling systems from programs and components
purchased off the shelf. In many cases, organizations do not develop the
application in-house. They don’t even run the application in-house, choosing
instead to use the application on a per-use basis by accessing it through the
cloud.
Questions:

4. Name some approaches to SAD?


5. What are advantages of DevOps?
6. What are disadvantages of DevOps?

3. Developing Information Systems and System


Development Life Cycle
Whether they rely on structured or agile approaches, or on a hybrid, most
organizations find it beneficial to use a standard set of steps, called a systems
development methodology, to develop and support their information systems.
Like many processes, the development of information systems often
follows a life cycle. For example, a commercial product follows a life cycle in that
it is created, tested, and introduced to the market. Its sales increase, peak, and
decline. Finally, the product is removed from the market and replaced by
something else. The system development life cycle (SDLC) also referred to
as the application development life-cycle, is a process for planning, creating,
testing, and deploying an information system. The systems development life
cycle concept applies to a range of hardware and software configurations, as a
system can be composed of hardware only, software only, or a combination of
both. There are usually six stages in this cycle, but different resources
introduced a cycle with slightly differences in stages. Some common stages in
a SDLC are: planning, requirement analysis, system analysis, system design,
prototyping, implementation, testing, documentation, deployment, evaluation,
maintenance
Figure 1.2: Waterfall model
The Waterfall model was the first process model to be introduced. It is also
referred to as a linear-sequential life cycle model. It is very simple to understand
and use. In a waterfall model, each phase must be completed before the next
phase can begin and there is no overlapping in the phases.
Phát Video

The Evolutionary model is a combination of Iterative and Incremental model of


SDLC. Delivering your system in a big bang release, delivering it in incremental
process over time is the action done in this model. Some initial requirements
and architecture envisioning need to be done.
Application of Evolutionary Model:

 It is used in large projects where you can easily find modules for
incremental implementation. Evolutionary model is commonly used
when the customer wants to start using the core features instead of
waiting for the full software.
 It is also used in object-oriented software development because the
system can be easily portioned into units in terms of objects.

Evolutionary model suggests breaking down of work into smaller chunks,


prioritizing them and then delivering those chunks to the customer one by one.
The number of chunks is huge and is the number of deliveries made to the
customer. The main advantage is that the customer’s confidence increases as
he constantly gets quantifiable goods or services from the beginning of the
project to verify and validate his requirements. The model allows for changing
requirements as well as all work in broken down into maintainable work chunks.

Figure 1.3: Spiral model


Questions:

7. What is SDLC?
8. Name some common stages in SDLC?
9. What are pros and cons of Waterfall model?'
10. Explain the Evolutionary model?

4. Agile Methodologies
The Agile methodology is a way to manage a project by breaking it up into
several phases. It involves constant collaboration with stakeholders and
continuous improvement at every stage. Once the work begins, teams’ cycle
through a process of planning, executing, and evaluating. Continuous
collaboration is vital, both with team members and project stakeholders. This
consensus turned into a document they called "The Agile Manifesto".
According to Fowler (2003), the agile methodologies share three key principles:

1. Focus on adaptive rather than predictive methodologies.


2. Focus on people rather than roles.
3. Focus on self-adaptive processes.

Many different individual methodologies come under the umbrella of agile


methodologies, including: Crystal, Lean, Adaptive Software Development,
Scrum, Feature Driven Development, eXtreme Programming and others as agile
methodologies

Figure 1.4: Agile scrum methodology (www.planview.com)

5. Object-Oriented Analysis and Design


Figure 1.5: Phases of OOAD development
There is no question that object-oriented analysis and design (OOAD) is the
standard for systems development (we elaborate on this approach later
throughout the book). OOAD is often called the third approach to systems
development, after the process-oriented and data-oriented approaches. The
object-oriented approach combines data and processes (called methods) into
single entities called objects. Objects usually correspond to the real things an
information system deals with, such as customers, suppliers, contracts, and
rental agreements. The goal of OOAD is to make systems elements more
reusable, thus improving system quality and the productivity of systems
analysis and design.

6. Rational Unified Process


Rational Unified Process (RUP) is a software development process for object-
oriented models. It is also known as the Unified Process Model. It is created by
Rational corporation and is designed and documented using UML (Unified
Modeling Language). This process is included in IBM Rational Method Composer
(RMC) product. IBM (International Business Machine Corporation) allows us to
customize, design, and personalize the unified process. RUP is proposed by
Ivar Jacobson, Grady Bootch, and James Rambaugh. Some characteristics
of RUP include use-case driven, Iterative (repetition of the process), and
Incremental (increase in value) by nature, delivered online using web
technology, can be customized or tailored in modular and electronic form, etc.
RUP reduces unexpected development costs and prevents wastage of resources.

Figure 1.6: Rational Unified Process architecture


Questions:

11. Which one is better, RUP or Agile?


12. What are the name of system feartures in Agile and RUP?
13. What is Agile manifesto?
14. Explain the term "Use-case driven"?

Reading

1. System development life cycle, phases and


processes: https://www.softwaretestinghelp.com/software-
development-life-cycle-sdlc
2. Object-oriented analysis and
design: https://www.geeksforgeeks.org/object-oriented-analysis-and-
design

You might also like