You are on page 1of 49

1

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Software Engineering: Processes and Methods ITECH2101-ITECH6101 Lecture 1

The Fundamentals of Software Engineering:


Systems Analysis and the Systems Analyst

Adapted from- Kendall, K. E. & Kendall J.E. (2008), Systems Analysis and Design, 7/E, Pearson Education, Inc., Upper Saddle River, New Jersey, 07548, 774p. Chapter 1 & 2 CRICOS Provider Number 00103D

Introduction to the Unit


Refer to the Unit Descriptions provided to you: Organisation Objectives Content Sequence Learning tasks and Assessments Assessment criteria- Type A and Type B Text Book References- UB Library and Safari Online Texts
ITECH2101-ITECH6101 Software Engineering: Processes and Methods CRICOS Provider Number 00103D

Kendall Ch 1 & 2

Things to Remember
Syllabus and the Text Book
Text Book is more detailed projection of the MOST topics in the syllabus The syllabus is what you need to cover

Other resources including the References are IMPORTANT


To cover some topics in the syllabus NOT covered or briefly covered in the Text Book
4 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Things to Remember (Cont.)


Make full use of your resources
Online resources Reference books Appropriate tools (e.g., CASE toolEnterprise Architect, Microsoft project)

Develop skills to help you move forward

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Things to Remember (Cont.)


Enjoy problems/errors They are a wonderful way to learn Dont look for help too quickly Asking questions should never be a substitute for THINKING- Software Engineers NEED a lot. WELCOME to the Thinkers Club.

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Todays Major Topics


Software Engineering Roles of systems analysts Types of information systems and the different levels of organization Phases in the SDLC and HCI factors Computer-Aided Software Engineering (CASE) tools Taking a Systems Approach Organizations as systems Depicting systems graphically
7 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Software Engineering
The IEEE Computer Society defines Software Engineering as:
(1) The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software. (2) The study of approaches as in (1).
(IEEE Standard Glossary of Software Engineering Terminology, IEEE std 610.12-1990, 1990.)

The discipline of software engineering encompasses knowledge, tools, and methods for defining software requirements, and performing software design, software construction, software testing, and software maintenance tasks.
[Guide to Software Engineering Body of Knowledge- http://www.swebok.org]
ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

www.acm.org/crossroads/xrds12-4/intro.html CRICOS Provider Number 00103D

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

SE & other Disciplines


Software Engineering also draws on knowledge from fields such as computer engineering, computer science, management, mathematics, project management, quality management, software ergonomics, and systems engineering.
[Guide to Software Engineering Body of Knowledge- http://www.swebok.org]

Software Engineering, thus, is the study and application of Systems Analysis, Design, Implementation, and required knowledge from other related fields.
10 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Systems Analysis and Design


- Is a series of processes systematically undertaken to improve a business through the use of computerized information systems Specifically Systems analysis what system should do Systems design how components of information system should be physically implemented Systems analyst uses analysis and design techniques to solve business problems with information technology
11 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

How do Systems Analysts fit in a business organization?


Administrators: Understanding of the workings of an organization
Gap

Technical staff: Understanding of technology

Systems analysts bridge the gap in perceptions by: - understanding the business and - understanding technology Role: help solve business problems using IT
12 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Roles of the Systems Analyst


The analyst must be able to work with people of all descriptions and be experienced in working with computers Three primary roles:
Consultant Supporting Expert Agent of change
13 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Qualities of the Systems Analyst


Problem solver Communicator Strong personal and professional ethics Self-disciplined and self-motivated

14

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Information A Key Resource


Fuels business and can be the critical factor in determining the success or failure of a business Needs to be managed correctly Managing computer-generated information differs from handling manually produced data
15 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Information Systems
Information Systems Crucial to success of modern business organizations Constantly being developed to make business more competitive Impact productivity and profits Keys to successful systems development Thorough systems analysis and design Understanding what business requires
16 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Types of Information Systems


Systems Analysts Recommend, Design, and Maintain Many Types of Systems for Users
Transaction Processing Systems (TPS) Office Automation Systems (OAS) Knowledge Work Systems (KWS) Management Information Systems (MIS) Decision Support Systems (DSS) Expert Systems (ES) Executive Support Systems (ESS) Group Decision Support Systems (GDSS) Computer-Supported Collaborative Work Systems (CSCWS)
ITECH2101-ITECH6101 Software Engineering: Processes and Methods

17

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Management & Control Hierarchy


Strategic Level

Higher Level Knowledge Level Operational Level

A General Three-tier model of Management for Planning and Decision Making


18 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Information Systems Needs


Strategic Level

Higher Level Knowledge Level Operational Level

A systems analyst may be involved with any or all of these systems at each organization level
19 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Operational Level
Transaction Processing System (TPS)
Process large amounts of data for routine business transactions Boundary-spanning Support the day-to-day operations of the company Examples: Payroll Processing, Inventory Management

20

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Knowledge Level
Office Automation System (OAS)
Supports data workers who share information, but do not usually create new knowledge Examples: Word processing, Spreadsheets, Desktop publishing, Electronic scheduling, Communication through voice mail, Email, Video conferencing

Knowledge Work System (KWS)


Supports professional workers such as scientists, engineers, and doctors Examples: computer-aided design systems, virtual reality systems, investment workstations
21 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Higher Level
Management Information System (MIS)
Support a broad spectrum of organizational tasks including decision analysis and decision making Examples: profit margin by sales region, expenses vs. budgets

Decision Support System (DSS)


Aids decision makers in the making of decisions Examples: financial planning with what-if analysis, budgeting with modeling

Expert System (ES)


Captures and uses the knowledge of an expert for solving a particular problem which leads to a conclusion or recommendation Examples: MYCIN, XCON

22

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Strategic Level
Executive Support System (ESS)
Helps executives to make unstructured strategic decisions in an informed way Examples: drill-down analysis, status access

Group Decision Support System (GDSS)


Permit group members to interact with electronic support Examples: email, Lotus Notes

Computer-Supported Collaborative Work System (CSCWS)


May include software support called groupware for team collaboration via network computers Example: video conferencing, Web survey system

23

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Integrating New Technologies into Traditional Systems


Ecommerce and Web Systems
Increased user awareness of the availability 24-hour access Improved usefulness and usability of interface extend globally

Enterprise Resource Planning Systems (ERP)


Integration of many information systems Flow of information between the functional areas within the organization Example: SAP, Oracle
24 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Integrating New Technologies into Traditional Systems


Wireless Systems
The operation of wireless devices or systems in homes and offices Example: Cellular Phones, GPS, Wireless LANs

Open Source Software


Proprietary code is not hidden Free to- distribute, share and modify Example: Linux OS, Mozilla Firefox brouser
25 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Major Approaches to Systems Development Traditional Systems Development Life Cycle (SDLC) CASE systems development life cycle Object-Oriented Systems Analysis and Design

26

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Systems Development Life Cycle (SDLC)


The systems development life cycle is a phased approach to solving business problems Developed through the use of a specific cycle of analyst and user activities Each phase has unique user activities incorporating Human-Computer Interaction (HCI) Considerations
27 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

The seven phases of the traditional systems development life cycle

28

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Identifying Problems, Opportunities, and Objectives


Activity:
Interviewing user management Summarizing the knowledge obtained Estimating the scope of the project Documenting the results

Output:
Feasibility report containing problem definition and objective summaries from which management can make a decision on whether to proceed with the proposed project

29

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Determining Human Information Requirements


Activity:
Interviewing and Questionnaires Sampling and investigating hard data Observe the decision makers behavior and environment Prototyping Learn the who, what, where, when, how, and why of the current system

Output:
How users accomplish their tasks How to make the new system more useful and usable. Understand business functions and information on the people, goals, data and procedure involved
30 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Analyzing System Needs


Activity:
Create data flow diagrams Complete the data dictionary Analyze the structured decisions made Prepare and present the system proposal

Output:
Recommendation on what, if anything, should be done
31 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Designing the Recommended System


Activity:
Design Design Design Design Design procedures for data entry the human-computer interface system controls files and/or database backup procedures

Output
Model of the actual system

32

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Developing and Documenting Software


Activity:
System analyst works with programmers to develop any original software Works with users to develop effective documentation Programmers design, code, and remove syntactical errors from computer programs Document software with help files, procedure manuals, and Web sites with Frequently Asked Questions

Output:
Computer programs System documentation
33 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Testing and Maintaining the System


Activity:
Test the information system System maintenance Maintenance documentation

Output:
Problems, if any Updated programs Documentation

34

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Implementing and Evaluating the System

Activity:
Train users Analyst plans smooth conversion from old system to new system Review and evaluate system

Output:
Trained personnel Installed system

35

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

The Impact of Maintenance


Maintenance is performed for two reasons
Removing software errors, and Enhancing existing software

Over time the cost of continued maintenance will be greater than that of creating an entirely new system.
At that point it becomes more feasible to perform a new systems study

36

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

The Impact of Maintenance

37

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Case Tools
CASE tools are productivity tools for systems analysts that have been created explicitly to improve their routine work through the use of automated support Reasons for using CASE tools

38

Increasing Analyst Productivity Improving Analyst-User Communication Integrating Life Cycle Activities Accurately Assessing Maintenance Changes
ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Case Tool Classifications


UCase Upper CASE tools perform analysis and design LCase Lower CASE tools generate programs from CASE design ICase Integrated CASE tools perform both upper and lower CASE functions
39 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Upper CASE Tools


Create and modify the system design Help in modeling organizational requirements and defining system boundaries Can also support prototyping of screen and report designs
ITECH2101-ITECH6101 Software Engineering: Processes and Methods

40

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Lower CASE Tools


Lower CASE tools generate computer source code from the CASE design Source code is usually generated in several languages

41

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Traditional versus CASE systems development life cycle

42

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Object-Oriented Systems Analysis and Design


Alternate approach to the structured approach of the SDLC (Traditional) Intended to facilitate the development of systems that must change rapidly in response to dynamic business environments Analysis is performed on a small part of the system followed by design and implementation. The cycle repeats with analysis, design and implementation of the next part and this repeats until the project is complete
43 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Other Alternate Approaches Agile approach Prototyping ETHICS Project champion Soft Systems Methodology Multiview

44

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Organizations As Systems
Conceptualized as systems designed to accomplish predetermined goals and objectives Composed of smaller, interrelated systems serving specialized functions Specialized functions are reintegrated to form an effective organizational whole
45 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Taking a Systems Perspective

46

ITECH2101-ITECH6101 Software Engineering: Processes and Methods

Kendall Ch 1 & 2

CRICOS Provider Number 00103D

Systems That Solve Business Problems


System interrelated components functioning together to achieve outcome Subsystems part of larger system Supersystem larger system contains subsystem Information systems collection of interrelated components that collect, process, store, and provide as output information needed to complete tasks Functional decomposition dividing system into smaller subsystems and components
47 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Depicting Systems Graphically


Context-level data flow diagrams
Focus is on the data flowing into and out of the system and the processing of the data

Entity-relationship model
Focus is on the entities and their relationships within the organizational system

Use Case Modeling


Describes what a system does without describing how the system does it; that is, it is a logical model of the system
48 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

Summary
Information is a key resource Systems analysts deal with many types of information systems Integration of traditional systems with new technologies Roles and qualities of the systems analyst The systems Development Life Cycle CASE tools Alternatives to structured analysis and design and to the SDLC Graphical representation of systems Levels of managerial control
49 ITECH2101-ITECH6101 Software Engineering: Processes and Methods Kendall Ch 1 & 2 CRICOS Provider Number 00103D

You might also like