INTRODUCTION Chapter 1
-
Upload
nita-meyer -
Category
Documents
-
view
26 -
download
0
description
Transcript of INTRODUCTION Chapter 1
![Page 1: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/1.jpg)
1
INTRODUCTIONChapter 1
Alan Dennis, Barbara Wixom, and David Tegarden
John Wiley & Sons, Inc.
Slides by Fred Niederman
Edited by Solomon Negash
![Page 2: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/2.jpg)
2
What are systems?
A surgeon, a civil engineer and a software engineer were chatting at a bar. The discussion rolled around to whose profession was the oldest. The surgeon said that surgery was, since in the book of Genesis, God created Eve from one of Adam's ribs, and surely that involved surgery. The civil engineer countered by saying that before God created people, God created the heavens and the Earth from chaos, surely a feat of civil engineering. The software engineer just smiled and said “_________________________________?”
• Downloaded from http://www.cis.gsu.edu/~shong/oojokes/ Jan 7, 2003
![Page 3: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/3.jpg)
3
System Analysis and Design(Definition)
• The study of a ___________ prior to taking some __________ (DeMarco, 1978)
• The ___________ of establishing the services that the _________requires from a system and the ___________under which it operates and is developed (Summerville, 1995)
• A __________used to develop computer-based ______________________ (Hoffer, George, & Valachich, 1999)
![Page 4: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/4.jpg)
4
A “Simple” Process for Making Lunch
![Page 5: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/5.jpg)
5
System Development Life Cycle (SDLC)
• Planning– Why build the system?
• Analysis– Who are the users?– What are the requirements?– What is the scope?
• Design– How will the system work?
• Implementation– System delivery
– How do we support the users?
![Page 6: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/6.jpg)
6
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
![Page 7: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/7.jpg)
7
• Identifying business value
• Analyze feasibility
• Develop work plan
• Staff the project
• Control and direct project
Planning
![Page 8: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/8.jpg)
8
Planning—steps & deliverables
• Describe the principal steps in the Planning Phase. What are the major deliverables?
![Page 9: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/9.jpg)
9
• Analysis
• Information gathering
• Process modeling
• Data modeling
Analysis
![Page 10: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/10.jpg)
10
Analysis—steps & deliverables
• Describe the principal steps in the Analysis Phase. What are the major deliverables?
![Page 11: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/11.jpg)
11
• Physical design
• Architectural design
• Interface design
• Database and file design
• Program design
Design
![Page 12: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/12.jpg)
12
Design—steps & deliverables
• Describe the principal steps in the Design Phase. What are the major deliverables?
![Page 13: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/13.jpg)
13
• Construction
• Installation
Implementation
![Page 14: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/14.jpg)
14
Implementation—steps & deliverables
• Describe the principal steps in the Implementation Phase. What are the major deliverables?
![Page 15: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/15.jpg)
15
Processes and DeliverablesProcess Product
Planning
Analysis
Design
Implementation
Project Plan
System Proposal
System Specification
New System and Maintenance
Plan
![Page 16: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/16.jpg)
16
Methodologies• What is a methodology?
– A formalized approach or series of steps– Writing code without a well-thought-out system request
may work for small programs, but rarely works for large ones.
• A defined methodology is needed for large projects• Alternative methodologies
– Structured (Waterfall) methodology– Prototype-based methodology– Rapid Application Development (RAD) methodology– Object-Oriented methodology
![Page 17: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/17.jpg)
17
Structured (Waterfall) Methodology
![Page 18: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/18.jpg)
18
Pros and Cons of the Waterfall Methodology
Pros Cons
Identifies systems requirements long before programming begins
Design must be specified on paper before programming begins
Long time between system proposal and delivery of new system
![Page 19: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/19.jpg)
19
RAD Methodology
• Critical elements– JAD (joint application development) sessions– Fourth generation/visualization programming
languages– CASE (computer aided software engineering)
tools– Code generators
![Page 20: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/20.jpg)
20
Prototype-based Methodology
![Page 21: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/21.jpg)
21
Object-Oriented Methodology
• Attempts to balance emphasis on data and process
• Uses Unified Modeling Language (UML) for diagramming – Use-case Driven– Architecture Centric– Iterative and Incremental
![Page 22: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/22.jpg)
22
Key Object-Oriented concepts
• Classes -- template to define objects
• Instances -- specific examples of class members
• Objects -- building block of the system
• Attributes -- describe data aspects of the object
• Methods -- the processes the object can perform
• Messages -- instructions sent to or received from other objects
![Page 23: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/23.jpg)
23
A Class and Its Objects
PATIENT
-Name-Birthdate-Phone Number+Insert ()()+Delete ()()
PATIENT 1: TOP PACKAGE: PATIENT
-Name = Teresa Marks-Birthdate = March 16, 1975-Phone number = 314-997-3456
PATIENT 2: TOP PACKAGE: PATIENT
-Name = Mel Bourne-Birthdate = May 11, 1965-Phone number = 314-997-3219
Attributes
Methods
Class
Instantiated Objects of the Class
![Page 24: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/24.jpg)
24
Additional O-O concepts
• _______________ is the principle that only information required to use the object is available outside the object
• ______________ is the mechanism that combines data and processes in a single object
• Class hierarchy, inheritance, and polymorphism
![Page 25: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/25.jpg)
25
_________________(What O-O concept does this diagram depict?)
![Page 26: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/26.jpg)
26
_________________(What O-O concept does this diagram depict?)
![Page 27: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/27.jpg)
27
_________________(What O-O concept does this diagram depict?)
![Page 28: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/28.jpg)
28
Project Team Roles
• Business analyst
• System analyst
• Infrastructure analyst
• Change management analyst
• Project manager
![Page 29: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/29.jpg)
29
Summary -- Part 1
• The Systems Development Lifecycle consists of four phases: Planning, Analysis, Design, and Implementation
• There are three major development methodologies: the waterfall method, RAD, and the Object-Oriented approach.
• Advantages of Object-Oriented approach are: increased system modularity, reusability, and more realistic way of viewing the system
![Page 30: INTRODUCTION Chapter 1](https://reader035.fdocuments.us/reader035/viewer/2022081603/5681388c550346895da03ba3/html5/thumbnails/30.jpg)
30
Summary -- Part 2
• There are six major elements in Object-Oriented design: classes, objects, instances, attributes, methods, and messages.
• Encapsulation, Inheritance, and Polymorphism are also important object-oriented concepts
• There are five major team roles: business analyst, systems analyst, infrastructure analyst, change management analyst and project manager.