Discovering Computers Fundamentals, 2010 Edition - IS Dev and... · Discovering Computers...
Transcript of Discovering Computers Fundamentals, 2010 Edition - IS Dev and... · Discovering Computers...
Discovering Computers Fundamentals, 2010 Edition
Living in a Digital World
Objec&ves Overview
Discuss the importance of project management, feasibility assessment,
documenta8on, and data and informa8on gathering
techniques
Discuss the purpose of each system development phase
Differen8ate between low-‐level languages and procedural languages
Iden8fy the benefits of object-‐oriented
programming languages and program development tools
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
2 See Page 417 for Detailed Objec8ves
Objec&ves Overview
List other programming
languages and other program development
tools
Describe various ways to develop Web pages
List the six program development steps
Explain the basic control structures used in designing solu8ons
to programming problems
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
3 See Page 417 for Detailed Objec8ves
System Development
System development is a set of ac8vi8es used to build an informa8on system
A system is a set of components that
interact to achieve a common goal
An informa&on system (IS) is a collec8on of
hardware, soQware, data, people, and
procedures that work together to produce quality informa8on
System development ac8vi8es are grouped into phases, and is called the system development life
cycle (SDLC)
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
4 Page 418
System Development
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
5 Page 418 Figure 11-‐1
System Development
• System development should follow three general guidelines:
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
6 Page 419
Group ac8vi8es or tasks into phases
Involve users
Define standards
System Development
• System development should involve representa8ves from each department in which the proposed system will be used
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
7 Page 419 Figure 11-‐2
System Development
• Project management is the process of planning, scheduling, and then controlling the ac8vi8es during system development
• To plan and schedule a project efficiently, the project leader iden8fies:
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
8 Page 420
Project scope Required ac8vi8es
Time es8mates for each ac8vity
Cost es8mates for each ac8vity
Order of ac8vi8es
Ac8vi8es that can take place at the same 8me
System Development
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
9 Pages 420 -‐ 421 Figure 11-‐3a
Click to view Web Link, click Chapter 11, Click Web Link from left navigation, then click Gantt Charts below Chapter 11
A popular tool used to plan and schedule the 8me
rela8onships among project ac8vi8es is a Gan[ chart
System Development
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
10 Pages 420 -‐ 421 Figure 11-‐3b
Click to view Web Link, click Chapter 11, Click Web Link from left navigation, then click PERT Charts below Chapter 11
A PERT chart also can be used for
planning and scheduling 8me
System Development
• Feasibility is a measure of how suitable the development of a system will be to the organiza8on
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
11 Page 421
Opera8onal feasibility
Schedule feasibility
Technical feasibility
Economic feasibility
System Development
• Documenta&on is the collec8on and summariza8on of data and informa8on and includes: – Reports – Diagrams – Programs – Other informa8on generated during system development
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
12 Page 422
System Development
• During system development, members of the project team gather data and informa8on using several techniques
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
13 Pages 422 -‐ 423 Figure 11-‐4
Review documenta8on Observe Survey
Interview JAD Sessions Research
System Development
A user may request a new or modified system
Organiza8ons may want to improve hardware, soQware, or other technology
Situa8ons beyond an organiza8on’s control might require a change
Management might mandate a change
A user may request a new or modified informa8on system using a request for system services or a project request
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
14 Page 423
System Development
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
15 Page 424 Figure 11-‐5
System Development
• The planning phase for a project begins when the steering commi[ee receives a project request
• Four major ac8vi8es are performed:
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
16 Page 425
Review and approve the
project requests Priori8ze the
project requests Allocate resources
Form a project development
team
System Development
• The analysis phase consists of two major ac8vi8es:
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
17 Pages 425 -‐ 427
Conduct a preliminary inves&ga&on
• Determines and defines the exact nature of the problem or improvement
• Interview the user who submi[ed the request
Perform detailed analysis
• Study how the current system works
• Determine the users’ wants, needs, and requirements
• Recommend a solu8on
System Development
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
18 Page 426 Figure 11-‐6
System Development
• The system proposal assesses the feasibility of each alterna8ve solu8on
• The steering commi[ee discusses the system proposal and decides which alterna8ve to pursue
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
19 Pages 427 -‐ 428
Packaged soMware
Custom soMware Outsourcing
Click to view Web Link, click Chapter 11, Click Web Link from left navigation, then click Vertical Market Software below Chapter 11
System Development
• The design phase consists of two major ac8vi8es
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
20 Page 428
Acquire hardware and soQware
Develop all of the details of the new
or modified informa8on system
System Development
• To acquire the necessary hardware and soQware:
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
21 Pages 428 -‐ 430
• Use research techniques such as e-‐zines
Iden8fy technical specifica8ons
• RFQ, RFP, or RFI is sent to poten8al vendors or VARs
Solicit vendor proposals • Various techniques
are used to determine the best proposal
Test and evaluate vendor proposals
• Systems analyst makes recommenda8on to steering commi[ee
Make a decision
Click to view Web Link, click Chapter 11, Click Web Link from left navigation, then click E-Zines below Chapter 11
System Development
• The next step is to develop detailed design specifica8ons – Some8mes called a physical design
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
22 Page 430
Database design
Input and output design
Program design
System Development
• Systems analysts typically develop two types of designs for each input and output
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
23 Pages 430 -‐ 431 Figures 11-‐8 – 11-‐9
Mockup Layout chart
System Development
• A prototype (proof of concept) is a working model of the proposed system – Prototypes have inadequate or missing documenta8on
– Users tend to embrace the prototype as a final system – Should not eliminate or replace ac8vi8es
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
24 Page 431
System Development
• Computer-‐aided soMware engineering (CASE) tools are designed to support one or more ac8vi8es of system development
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
25 Page 432 Figure 11-‐10
System Development
• The purpose of the implementa&on phase is to construct the new or modified system and then deliver it
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
26 Page 432
Develop programs
Install and test the new
system Train users
Convert to the new system
System Development
• Various tests should be performed on the new system
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
27 Page 433
Unit test
• Verifies that each individual program or object works by itself
Systems test
• Verifies that all programs in an applica8on work together properly
Integra8on test
• Verifies that an applica8on works with other applica8ons
Acceptance test
• Checks the new system to ensure that it works with actual data
System Development
• Training involves showing users exactly how they will use the new hardware and soQware in the system – One-‐on-‐one sessions – Classroom-‐style lectures – Web-‐based training
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
28 Page 433 Figure 11-‐11
System Development
• One or more of four conversion strategies can be used to change from the old system to the new system – Direct conversion – Parallel conversion – Phased conversion – Pilot conversion
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
29 Pages 433 -‐ 434
System Development
• The purpose of the opera&on, support, and security phase is to provide ongoing assistance for an informa8on system and its users aQer the system is implemented
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
30 Page 434
Perform maintenance ac8vi8es
Monitor system
performance
Assess system security
System Development
• A computer security plan should do the following:
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
31 Page 434
Iden8fy all informa8on assets of an organiza8on
Iden8fy all security risks that may cause an informa8on
asset loss
For each risk, iden8fy the
safeguards that exist to detect, prevent, and recover from a
loss
Programming Languages and Program Development Tools
• A computer program is a series of instruc8ons that directs a computer to perform tasks – Created by a programmer using a programming language
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
32 Pages 435 -‐ 436 Figure 11-‐12
Programming Languages and Program Development Tools
• Machine language is the first genera8on of programming languages
• Only language the computer directly recognizes
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
33 Page 436 Figure 11-‐13
Programming Languages and Program Development Tools
• Assembly language is the second genera8on of programming languages
• Programmer writes instruc8ons using symbolic instruc8on codes
• A source program contains the code to be converted to machine language
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
34 Page 437 Figure 11-‐14
Programming Languages and Program Development Tools
• In a procedural language, the programmer writes instruc8ons that tell the computer what to accomplish and how to do it – Third-‐genera&on language (3GL)
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
35 Page 438
A compiler translates an en8re program before execu8ng it
An interpreter converts and executes one code statement at a 8me
Programming Languages and Program Development Tools
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
36 Pages 438 – 439 Figures 11-‐15 – 11-‐16
Programming Languages and Program Development Tools
• The C programming language is used to write many of today’s programs
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
37 Page 439 Figure 11-‐17
Programming Languages and Program Development Tools
• COBOL (COmmon Business-‐Oriented Language) is designed for business applica8ons, but easy to read because of the English-‐like statements
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
38 Page 440 Figure 11-‐18
Programming Languages and Program Development Tools
• An object-‐oriented programming (OOP) language allows programmers the ability to reuse and modify exis8ng objects
• Other advantages include:
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
39 Page 440
Objects can be reused
Programmers create applica8ons
faster
Work well in a RAD environment
Most program development tools
are IDEs
Programming Languages and Program Development Tools
• Java is an object-‐oriented programming language developed by Sun Microsystems
• The Just-‐in-‐8me (JIT) compiler to convert the bytecode into machine-‐dependent code
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
40 Pages 440 -‐ 441 Figure 11-‐19
Click to view Web Link, click Chapter 11, Click Web Link from left navigation, then click Java Platforms below Chapter 11
Programming Languages and Program Development Tools
• The MicrosoQ .NET Framework allows almost any type of program to run on the Internet or an internal business network, as well as computers and mobile devices
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
41 Page 441
Programming Languages and Program Development Tools
• C++ is an extension of the C programming language – Addi8onal features for working with objects, classes, events, and other object-‐oriented concepts
• C# is based on C++ and was developed by MicrosoQ
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
42 Page 441
Programming Languages and Program Development Tools
Visual Studio is MicrosoQ’s suite of program development tools
Visual Basic is based on the BASIC
programming language
Visual C++ is based on C++
Visual C# combines the programming elements of C++ with an easier,
rapid-‐development environment
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
43 Pages 441 -‐ 443
Programming Languages and Program Development Tools
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
44 Page 442 Figure 11-‐20
Programming Languages and Program Development Tools
A visual programming language is a language that uses a visual or graphical interface for crea8ng all source code
Borland’s Delphi is a powerful program development tool that is ideal for building large-‐scale enterprise and Web applica8ons in a RAD environment
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
45 Page 443
Programming Languages and Program Development Tools
• PowerBuilder is a powerful program development RAD tool
• Best suited for Web-‐based, .NET, and large-‐scale enterprise object-‐oriented applica8ons
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
46 Page 443
Programming Languages and Program Development Tools
• A 4GL (fourth-‐genera8on language) is a nonprocedural language that enables users and programmers to access data in a database – One popular 4GL is SQL
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
47 Page 443 Figure 11-‐21
Programming Languages and Program Development Tools
• Classic programming languages include:
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
48 Page 444 Figure 11-‐22
Ada ALGOL APL BASIC
Forth FORTRAN HyperTalk LISP
Logo Modula-‐2 Pascal PILOT
PL/1 Prolog RPG Smalltalk
Programming Languages and Program Development Tools
• An applica&on generator is a program that creates source code or machine code from a specifica8on of the required func8onality – OQen bundled as part of a DBMS
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
49 Pages 444 -‐ 445 Figure 11-‐23
Programming Languages and Program Development Tools
• A macro is a series of statements that instructs an applica8on how to complete a task
• You usually create the macro in one of two ways: – Record the macro with a macro recorder – Write the macro
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
50 Page 445
Click to view Web Link, click Chapter 11, Click Web Link from left navigation, then click Macros below Chapter 11
Programming Languages and Program Development Tools
• HTML is a special formaong language that programmers use to format documents for display on the Web
• XHTML is a markup language that allows Web sites to be displayed more easily on mobile devices
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
51 Page 446 Figure 11-‐24
Programming Languages and Program Development Tools
• XML allows Web developers to create customized tags and use predefined tags to display content appropriately on various devices – WML is a subset of XML and is used to design pages for microbrowsers
• Two applica8ons of XML are RSS 2.0 and ATOM
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
52 Pages 446 -‐ 447
Click to view Web Link, click Chapter 11, Click Web Link from left navigation, then click XML below Chapter 11
Programming Languages and Program Development Tools
• Web browsers can execute short programs to add interac8ve elements to Web pages
• To send and receive informa8on between your computer and a Web server, these programs use the CGI (common gateway interface)
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
53 Page 447
Scripts Applets
Servlets Ac&veX controls
Programming Languages and Program Development Tools
• Programmers write scripts, applets, servlets, or Ac8veX controls using a variety of languages
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
54 Pages 447 -‐ 448
JavaScript Perl PHP
Rexx Tcl VBScript Click to view Web Link, click Chapter 11, Click Web Link from left navigation, then click PHP below Chapter 11
Programming Languages and Program Development Tools
Dynamic HTML (DHTML) allows Web developers to include more graphical interest and interac8vity
Ruby on Rails (RoR) provides technologies for developing object-‐oriented, database-‐driven Web sites
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
55 Page 448
Programming Languages and Program Development Tools
• Web 2.0 allows Web sites to provide a means for users to:
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
56 Page 448
Share personal informa8on
Allow users to modify Web site
content
Have applica8on soQware built into the site
Programming Languages and Program Development Tools
• Most Web 2.0 sites use APIs – An API enables programmers to interact with an environment such as a Web site or opera8ng system
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
57 Page 448 Figure 11-‐26
Programming Languages and Program Development Tools
• Web page authoring soMware can create sophis8cated Web pages that include images, video, audio, anima8on, and other effects
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
58 Page 449
Dreamweaver Expression Web
Flash SharePoint Designer
Programming Languages and Program Development Tools
• Mul&media authoring soMware allows programmers to combine text, graphics, anima8on, audio, and video in an interac8ve presenta8on
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
59 Page 449
ToolBook Director
Programming Languages and Program Development Tools
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
60 Page 449 Figure 11-‐27
Program Development Cycle
• Program development consists of a series of steps programmers use to build computer programs
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
61 Pages 450 -‐ 451 Figure 11-‐28
Program Development Cycle
• The sequence control structure shows one or more ac8ons following each other in order
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
62 Page 452 Figure 11-‐29
Program Development Cycle
• The selec&on control structure tells the program which ac8on to take, based on a certain condi8on – If-‐then-‐else – Case
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
63 Page 452 Figure 11-‐30
Program Development Cycle
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
64 Page 453 Figure 11-‐31
Program Development Cycle
• The repe&&on control structure enables a program to perform one or more ac8ons repeatedly as long as a certain condi8on is met
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
65 Page 453 Figures 11-‐32 – 11-‐33
Video: Electronic Arts Going Mobile
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
66
CLICK TO START
Summary
System development phases
Guidelines for system development
Ac8vi8es that occur during system development
Various programming languages and
program development tools
Web development and mul8media
development tools
Program development and the tools used in this
process
Discovering Computers Fundamentals, 2010 Edi8on Chapter 11
67 Page 454
Discovering Computers Fundamentals, 2010 Edition
Living in a Digital World
Chapter 11 Complete