You are on page 1of 25

INFORMATION

MANAGEMENT
Lecture 2
Database Development Process
Information System Planning
• Information Systems Planning is critical in developing and
executing successful strategic plans in huge firms at
global level.
• Theoretical literature of the information systems planning
suggests two challenging theories of effective planning in
a turbulent environment.
1. One predicts that organizations using a formal,
comprehensive planning approach will be more
successful.
2. Two predicts that organizations using an informal,
incremental approach will be more successful in such
environment.
Stage model of Information System Planning

Stage model of Information System planning


System Development Life Cycle
• SDLC was first developed in the 1960s to manage the
large software projects associated with corporates
systems running on mainframes.
• Detailed, well-planned development process
• Time-consuming, but comprehensive
• Long development cycle
System Development Life Cycle

SDLC waterfall model


System Development Life Cycle
1. Preliminary Analysis. In this phase, a review is done
of the request. A key part of this step is a feasibility
analysis, which includes an analysis of the technical
feasibility, the economic feasibility, and the legal
feasibility. This step is important in determining if the
project should even get started.
2. System Analysis. In this phase, one or more system
analysts work with different stakeholder groups to
determine the specific requirements for the new system.
System Development Life Cycle
3. System Design. In this phase, a designer takes the
system-requirements document created in the previous
phase and develops the specific technical details
required for the system.
4. Programming. The code finally gets written in the
programming phase. Using the system-design
document as a guide, a programmer (or team of
programmers) develop the program.
System Development Life Cycle
5. Testing. In the testing phase, the software program
developed in the previous phase is put through a series
of structured tests. The first is a unit test, which tests
individual parts of the code for errors or bugs. Next is a
system test, where the different components of the
system are tested to ensure that they work together
properly. Finally, the user-acceptance test allows those
that will be using the software to test the system to
ensure that it meets their standards. Any bugs, errors,
or problems found during testing are addressed and
then tested again.
System Development Life Cycle
6. Implementation. Once the new system is developed
and tested, it has to be implemented in the organization.
This phase includes training the users, providing
documentation, and conversion from any previous
system to the new system.
7. Maintenance. This final phase takes place once the
implementation phase is complete. In this phase, the
system has a structured support process in place:
reported bugs are fixed and requests for new features
are evaluated and implemented; system updates and
backups are performed on a regular basis.
Rapid Application Development
• Rapid Application Development is a software-
development methodology that focuses on quickly
building a working model of the software, getting feedback
from users, and then using that feedback to update the
working model.

The RAD
Methodology
Rapid Application Development
• The RAD methodology consists of four phases:
1. Requirements Planning. This phase is similar to the
preliminary-analysis, system-analysis, and design
phases of the SDLC. In this phase, the overall
requirements for the system are defined, a team is
identified, and feasibility is determined.
2. User Design. In this phase, representatives of the
users work with the system analysts, designers, and
programmers to interactively create the design of the
system. A JAD (Joint-Application Development)
session gets all of the stakeholders together to have a
structured discussion about the design of the system.
Rapid Application Development
3. Construction. In the construction phase, the
application developers, working with the users, build the
next version of the system. This is an interactive
process, and changes can be made as developers are
working on the program.
4. Cutover. In this step, which is similar to the
implementation of the SDLC, the system goes live. All
steps required to move from the previous state to the
use of the new system are competed here.
Rapid Application Development
• The RAD methodology is much more compressed than
SDLC. Many of the SDLC steps are combined and the
focus is on user participation and iteration.
• The RAD methodology is much better suited for smaller
projects than SDLC.
• SDLC requires more documentation and attention to detail
and is well suited to large, resource-intensive projects.
• RAD makes more sense for smaller projects that are less
resource-intensive and need to be developed quickly.
Agile Method
• Agile methodology is an approach to the project
management which helps to respond to unpredictability of
building software through incremental, iterative work
cadences, known as sprints.
• This methodology was developed to deal with situation
where the waterfall model fails.
• The Agile Manifesto is a declaration of the values and
principles expressed in agile methodology. It aims to help
uncover better ways of developing software.
• Few Examples of Agile Method:
• Feature-Driven development, Extreme programming,
Scrum, RAD.
Agile Method
• Feature-Driven Development – an iterative and
incremental software development process.
1. Develop an Overall Model – More shape than content.
2. Build a Features List – A list of features grouped into
sets and subject areas
3. Plan by Feature – A development plan class owners,
feature set owners.
4. Design by Feature – A design package
5. Build by Feature – Completed client-valued function
Agile Method
• Extreme Programming – software development
methodology which is intended to improve software
quality and responsiveness to changing customer
requirements.
Agile Method
• Scrum – Relies on a self-organizing, cross functional
team. The scrum team is self-organizing in that there is no
overall team leader who decides which person will do
which task or how a problem will be solved. Those are
issues that are decided by the team as a whole.
• Scrum is a team cross functional, meaning everyone is
needed to take a feature from idea to implementation.
• Scrum Master – As a coach for the team, helping
members use the scrum process to perform at the highest
level.
• Product Owner – Represent the business, customers or
users, and guides the team toward building the right
product.
Four values of agile manifesto
1. Individuals and interactions over processes and
tools.
2. Working software over comprehensive
documentation
3. Customer collaboration over contract
negotiation
4. Responding to change over following plan.
Principles of Agile Manifesto
1. Customer satisfaction through early and continuous
software delivery
2. Accommodate changing requirements throughout the
development process
3. Frequent delivery of working software
4. Collaboration between the business stakeholders and
developers throughout the project
5. Support, trust, and motivate the people involved
6. Enable face-to-face interactions
7. Working software is the primary measure of progress
8. Agile processes to support a consistent development
pace
Principles of Agile Manifesto
9. Attention to technical detail and design enhances agility
10. Simplicity
11. Self-organizing teams encourage great architectures,
requirements, and designs
12. Regular reflections on how to become more effective
People Involved in Database Development
• Business analysts/Systems analysts
• Work with management and users to analyze
information requirements
• Database analysts
• Concentrate on requirements and design for database
• Users
• Provide assessment of their information needs
• Programmers
• Database/Data administrators
• Other technical experts
• Systems programmers, network administrators, testers,
technical writers
Three Schema Architecture for Database
Development
• All views of the same database
• Conceptual Schema
• Technology independent
• Analysis phase
• External Schema
• One or more user views
• Each user view is a subset of conceptual schema
• Logical design phase
• Internal Schema
• Physical design phase
• How data are stored in a computer’s secondary memory
Three-schema database architecture
Three-Tiered Database Architecture
• Where to store the data during physical database design
• Client tier
• Presentation tier
• Desktop or notebook computer manages user interface
and localized data
• Application/Web tier
• Process services tier
• Provides access from client tier to data in enterprise tier
• Enterprise tier
• Data services tier
• Minicomputer or mainframe manages organization data
Three-tiered client/server database architecture

You might also like