Professional Documents
Culture Documents
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
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