Download - Systems Development Visuals
-
8/12/2019 Systems Development Visuals
1/202
-
8/12/2019 Systems Development Visuals
2/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.2
V 2. .0
ContentsComputers in the Modern World
Information Systems Velotec Case Study
The Information Systems Department
Velotec Information SystemsRelationships with Business Managers
Overview of System Development Life Cycle
Townsfield Case Study
-
8/12/2019 Systems Development Visuals
3/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.3
V 2. .0
Introduction
Module covers a number of topics involved withcomputer based systems development
Emphasis will be on business use of computers
Knowledge gained will enable you to become ajunior member of a systems development team
A case study approach and exercises will be used toreinforce the topics
The exercises and discussion points will involve allstudents in class discussions
A second case study is provided to enable studentsto consider alternatives
-
8/12/2019 Systems Development Visuals
4/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.4
V 2. .0
Computers in the ModernWorld
Computers are used everywhere
1981 the first IBM PC ran on a 4.77 MHzmicroprocessor
1990 PC became widely used, many applications
available 1987 Internet became commercially available
around 28,000 host computers connected
now we have around 500 millionWe are thus still in the early days of development!
-
8/12/2019 Systems Development Visuals
5/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.5
V 2. .0
Computers in the Modern WorldDiscussion point 1
As a group exercise, discuss how computers affectthe lives of group members
What would change if all computers failed to workfor say one week?
What effect would this scenario have on you, onyour family; on anyone you know who has a job?
-
8/12/2019 Systems Development Visuals
6/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.6
V 2. .0
Computers in the Modern WorldAnswer Discussion point 1
There is no correct answer, the purpose of the discussion is
to raise the groups awareness of the impact computers haveon our daily lives
Each person should determine how their life would change ifall computers failed to work for one week
Most shops which use computerised checkout machineswould shut, banks would have to close, no one couldwithdraw money from their account. Traffic lights and cellphones would cease to work, aircraft could not land or in
some cases, fly safely. Hospital life support machines wouldstop and patients would die
Many many others!
-
8/12/2019 Systems Development Visuals
7/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.7
V 2. .0
Computers in the Modern WorldDiscussion point 2
Discuss some of the good and bad uses ofthe Internet
What will computers be used for in yourlifetime?
Note: as a computing student, you will be partof this development
-
8/12/2019 Systems Development Visuals
8/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.8
V 2. .0
Computers in the Modern WorldAnswer Discussion point 2
Identifying the good and bad uses of the Internet will enableyour group to appreciate that inventions of man are notalways used for peaceful or ethical purposes. Some peopleuse technology to commit crime and to create unsuitablecontent for websites. You will be aware of hacking but thatis a very mild form of bad use compared to some illegal uses
of the Internet
You may wish to debate how this can be stopped orcontrolled
You should also consider what computers might be used forin your l ifetime, for as a computing student, you will be partof this development. Will everything be on the web?
-
8/12/2019 Systems Development Visuals
9/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.9
V 2. .0
Communicating Design
How do we show a user what a computer system
will look like? Like other professions, we use models
Later we look at types of model we can use
First we need to understand a computer systemin business it is usually called an Information
System
the purpose of an IS is to provide information toits users
-
8/12/2019 Systems Development Visuals
10/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.10
V 2. .0
Information Systems A system is a
collection of components- machine, software and humans,which all co-operate in an organised way to achieve somedesired result
M E C Hull, K Jackson, A J J Dick. (2004) Requirements Engineering, Springer ISBN 1-85233-577-7
NOTE the use of quotation marks, hence words not plagiarised
A railway is a system. The components include:
track, signals, drivers, guards, passengers, controls,
finance procedures, ticket sales, timetables,etc it has sub systems, such as track and signal control
systems
-
8/12/2019 Systems Development Visuals
11/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.11
V 2. .0
Information SystemDiscussion Point 3
In groups, identify a typical InformationSystem that you have seen or ideally used inyour daily life
Identify how the IS uses computers for the
benefit of the business and for the customer
-
8/12/2019 Systems Development Visuals
12/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.12
V 2. .0
Information SystemDiscussion Point 3
Could select fast food outlet e.g. McDonalds
typical Information system (IS)
process of collecting data, the procedures andpeople involved, all combining together in astructured way
in a business organisation an IS collects, storesand analyses data to provide information to staff,customers and management
-
8/12/2019 Systems Development Visuals
13/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.13
V 2. .0
Information SystemDiscussion Point 3
What happens when you enter a McDonalds?
What type of data entry keyboard is used andwhy?
How are changes made when new productsare available for sale?
What information is displayed and where?What data is collected and how can this be
used to improve the business?
-
8/12/2019 Systems Development Visuals
14/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.14
V 2. .0
Information SystemDiscussion Point 3
Collects the type and number of each product sold in each 15minute slot of each day
Connects to head office to automatically reorder productsfor next delivery
Store managers can identify: the number of products needed in stock to ensure they do
not run out
number and type of product to be cooked and readynumber of staff required for each period
Analyses sales pattern of new products versus old
-
8/12/2019 Systems Development Visuals
15/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.15
V 2. .0
Velotec - The Business
Medium sized manufacturing and retail
services companyProduces car accessories and tuning
equipment for the enthusiast
Fits new brakes and exhausts via ten drive-inworkshops
Produces high technology components andassemblies for the specialist automotiveindustry
-
8/12/2019 Systems Development Visuals
16/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.16
V 2. .0
VelotecOrganisation
Structure
IS Manager
Chief Accountant
Finance Director
Director Retail Operations
Director Workshop Operations
Director Human Resources
Director Marketing
Manager High Performance Products
Manager Consumer Products Engineering
Director Manufacturing
Managing Director
Company Secretary
Chairman
-
8/12/2019 Systems Development Visuals
17/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.17
V 2. .0
Velotec Major Systems
A recently set up website and the associated
back-end systems
A large stock control system
A customer loyalty scheme based on abudget card
Special purpose engineering analysis
programsSpecial purpose accounts system
-
8/12/2019 Systems Development Visuals
18/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.18
V 2. .0
The Information SystemsDepartment
IS Manager
Operationsmanagement
User supportSystems support
Telecommunications
or networkmanagement
Developmentmanager
Project manager
Systems analystDatabase
administrator
Programmer
Project support
-
8/12/2019 Systems Development Visuals
19/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.19
V 2. .0
Development Project Team Roles - 1 Project manager
takes full responsibi lity for the delivery of a system ontime, on budget and to an agreed quality standard
Systems analyst
defines what a system is required to do in order to meet
the needs of the business
Database administrator
responsible for designing the database so that it is able to
meet performance, security and integration requirements
often continues to provide support after the development
project is completed
-
8/12/2019 Systems Development Visuals
20/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.20
V 2. .0
Development Project Team Roles - 2
Programmers
programmers use their knowledge of a programming language to
implement the system defined by the system specification
large projects often use contract programmers who are hired for their
very detailed knowledge and skill of the particular programming
language and specific development tools
Project support
large projects may also use a number of people to provide support
services to the project teame.g. project l ibrarians, auditors and technical specialists in areas
such as Operational Research (OR)
-
8/12/2019 Systems Development Visuals
21/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.21
V 2. .0
Velotec Information Systems
Started twenty years ago with a combination of anexternal bureau service and a small mainframe thatwas used for accounts and stock control
Replaced by a UNIX based system
Network introduced to allow file and print sharing
The old UNIX system was replaced by more modernUNIX servers and incorporated into the network
As PC power increases, the UNIX system is being
phased out eCommerce being considered
-
8/12/2019 Systems Development Visuals
22/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.22
V 2. .0
Velotec IS DepartmentOrganisation Structure
Secretary
Network
technician (2)
Networkmanager
Help desk
staff (2)
Support
technician (5)
IT supportmanager
Databaseadministrator
Systems
analyst
Programmer
(2+X)
Project
manager
Developmentmanager
IS Manager
-
8/12/2019 Systems Development Visuals
23/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.23
V 2. .0
Many titles over the last 20 years
Computer Department was common
Data Processing (DP) Department
Management Information Systems (MIS) orInformation Systems Department
Ownership of systems moved from IS Department to
business managers
History of the IS Department
-
8/12/2019 Systems Development Visuals
24/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.24
V 2. .0
Historical View of the RelationshipBetween Systems Development
Teams and Business Functions Neither the business manager nor his staff had any real
ownership of the project
the users would often feel that the new system was beingimposed on them by another (the IS) department
the business manager would take no responsibil ity for the
success of the new system, because it was an ISdepartment system, not his
-
8/12/2019 Systems Development Visuals
25/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.25
V 2. .0
A More Modern Approach
Recognises that business systemsshould be owned by business
managers and that ownershipshould extend to thedevelopment process
-
8/12/2019 Systems Development Visuals
26/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.26
V 2. .0
Decision Making Processes - 1
Leading up to a development project
The business manager recognises that an opportunityexists to improve the way his/her department operates, or
that a new requirement exists that requires an IS to
support it A business justification for a new or modified system is
produced and presented to the IS Steering Committee for
approval and for prioritisation as part of the IS Department
workload
-
8/12/2019 Systems Development Visuals
27/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.27
V 2. .0
Decision Making Processes - 2
The IS Department forms a project team which carries out an
initial investigation with the business manager
If an internal development project is undertaken, the
business manager willown the project
take responsibil ity for the implementation of the system
be held to account for the achievement of the expected
business improvement
-
8/12/2019 Systems Development Visuals
28/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.28
V 2. .0
Reasons for Problems - 1 Business managers usually do not understand requirements
The systems analyst may have no previous experience of thebusiness area
The language (not programming language) needed to define a
specification is usually very obscure from the businessmanagers perspective
The business managers requirements usually result in
changes to the requirements specification
S
-
8/12/2019 Systems Development Visuals
29/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.29
V 2. .0
Reasons for Problems - 2
Some system development life cycle models require the full
requirements specif ication to be completed before work startson system design and implementation
We expect systems to be user-friendly, but this quality isextremely diff icult to define and to specify
Is there a solution ?
We will see later in the module how we try to produce modelsof the system which business managers can understand
B i S t d T 1 30
-
8/12/2019 Systems Development Visuals
30/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.30
V 2. .0
Do this
withSkill A
Then this
withSkil l B
Then this
withSkill C
Then this
withSkill D
Pass all results to the next phase
Start
Finish
Linear Life Cycle Model
Businesses Systems and Teams 1 31
-
8/12/2019 Systems Development Visuals
31/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.31
V 2. .0
System Maintenance
DevelopMaintain
Phase
outResources
Time
Businesses Systems and Teams - 1 32
-
8/12/2019 Systems Development Visuals
32/202
NCC Education Limited, 2007
Businesses, Systems and Teams - 1.32
V 2. .0
Maintenance Work Categories Corrective
putting right any errors that remain in the system
Perfective
improving the system so that it better meets the needs of
the business
Adaptive
changes that are needed because the organisation orperhaps legislation has changed
Businesses Systems and Teams - 1 33
-
8/12/2019 Systems Development Visuals
33/202
NCC Education Limited, 2007
Businesses, Systems and Teams 1.33
V 2. .0
Velotec System Maintenance
No separate maintenance function within
the IS Department
All maintenance work is undertaken byfull-time programmers and contractors
Corrective maintenance is prioritised onthe basis of the seriousness of theproblem
Businesses, Systems and Teams - 1.34
-
8/12/2019 Systems Development Visuals
34/202
NCC Education Limited, 2007
, y
V 2. .0
A Maintainable System
Should have a well defined developmentmethodology
Is fully documented
Conforms to good programmingstandards
Has been tested effectively
Businesses, Systems and Teams - 1.35
-
8/12/2019 Systems Development Visuals
35/202
NCC Education Limited, 2007
y
V 2. .0
Summary The development of large business systems is always a collaborative
effort, needing
a combination of ski lls and experience that no one individual is likelyto possess
a sufficiently large resource to be able to complete a project beforethe business needs change and to contribute to the business
We have emphasised
the main skills and functions that typically comprise an IS projectdevelopment organisation structure
that successful projects are owned by the business function thatcommissions them
that the need for collaboration between the IS specialists and users isa key requirement for success
that the development process may not be the most costly part of thelife cycle of a system
-
8/12/2019 Systems Development Visuals
36/202
Businesses, Systems and Teams - 1.37
-
8/12/2019 Systems Development Visuals
37/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co. - 2
The data collected via the terminal includes the
number of units sold for each product, and themoney taken
This data is analysed to identifystock sold and which therefore needs replacing
performance of each outlet against expected sales
trends in sales of products
income against predictions and business efficiency
reports produced for each director
Businesses, Systems and Teams - 1.38
T fi ld S ft D i k C
-
8/12/2019 Systems Development Visuals
38/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co.
Exercise 1
Bearing in mind the type of business, would it be
useful to collect the date and time of each sale?
Could this extra data be used to provide useful
information to local and senior management?
Is there any advantage to be gained by transmittingthe data directly to HQ as it is collected at theterminal?
Businesses, Systems and Teams - 1.39
Townsfield Soft Drinks Co
-
8/12/2019 Systems Development Visuals
39/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co.
Answer Exercise 1
Some useful information would include:
Collecting this data would enable an analysis to identify busy andslack periods in order to facilitate more accurate scheduling of staffand assist in establishing the loss of income if the opening times ofthe outlet were changed. (Identify operating costs per hour againstincome per hour)
Transmitting the data directly as it is collected would provide aninstant analysis, and ensure data is not lost if for any reason theterminal fails, is damaged or destroyed in a fire. However there wouldbe a cost associated with having communication lines permanently
connected between HQ and each of the 200 outlets.
YOU should think of more benefits!
Businesses, Systems and Teams - 1.40
Townsfield Soft Drinks Co
-
8/12/2019 Systems Development Visuals
40/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co.
Business Review
Old computer system run by IT Department
Business reorganised, Director for each division
Objective placed on profit, identified by
customer
product Four key databases identified and set up
financial
retailwholesale
HR
Businesses, Systems and Teams - 1.41
Townsfield Soft Drinks Co
-
8/12/2019 Systems Development Visuals
41/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co.
IT support
Consultants used to identify how IT could support
reorganised businessConsultant report useless
A new consultant advised
TO PLACE CONTROL OF IT with USERSAll IS systems to be controlled at board level
All projects reviewed by Company Steering
Committee consisting of all 6 board directors
Businesses, Systems and Teams - 1.42
-
8/12/2019 Systems Development Visuals
42/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co.Company Steering Committee
CSC considers projects on basis of
what advantage will be gained by the business?
what will the business lose if it does not
implement the proposed project?what information do we need this project to
provide?
will it be cost effective?CSC then approves best; achievable within resource
base
Businesses, Systems and Teams - 1.43
-
8/12/2019 Systems Development Visuals
43/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co.Company Steering Committee
CSC meets every 2 months to
Review current project progress
Review list of projects
Consider new projectsgiven business needs may change over time
external factors cause change
Ad hoc projects- minor changes possible with anyboard member signed approval
(Effect of ad hoc projects discussed later)
Businesses, Systems and Teams - 1.44
-
8/12/2019 Systems Development Visuals
44/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co.Exercise 2
In groups, students should discuss theinternal and external changes which are likelyto affect a business
Students should select a business they usethemselves and hence know about
Businesses, Systems and Teams - 1.45
-
8/12/2019 Systems Development Visuals
45/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co.Answer Exercise 2
Depending on the type of business selected,ideas may include; new chief executive withdifferent ideas for the companys future,takeover by a rival company, price changesand delivery issues with raw materials, effectof competitors entering or leaving the market,government tax or other business legislation
changes, population change, staff changes,loss of particular expertise
Businesses, Systems and Teams - 1.46
-
8/12/2019 Systems Development Visuals
46/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co.CSC
Project delay may be due to too many ad hoc
projects
board will require person who signed approval, to
justify to the board (removes blame from IT
section)
Is this an improvement on Velotec project
developments?
Businesses, Systems and Teams - 1.47
-
8/12/2019 Systems Development Visuals
47/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co.External Data
External data bought in from specialist
organisations, for example:
demographics; population changes due to births, deaths,
plans for new house building, developments in
workplaces (expansion or reduction)weather, history and predictions
major sporting and other large events
These all have an effect on sales
Businesses, Systems and Teams - 1.48
-
8/12/2019 Systems Development Visuals
48/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co.Business Change
Customer needed more responsive delivery
So to retain customers:
improved order system
improved stock controlnew warehouse locations
IT section unable to provide in time for business
needs External package bought, modified by contract staff
Businesses, Systems and Teams - 1.49
-
8/12/2019 Systems Development Visuals
49/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co.Exercise 3
In groups, students should discuss how vital the
use of IT is to this business
could the business manage without IT?
briefly explain what the impact of no IT would be
Could Townsfield use IT in other areas of itsbusiness?
Businesses, Systems and Teams - 1.50
-
8/12/2019 Systems Development Visuals
50/202
NCC Education Limited, 2007V 2. .0
Townsfield Soft Drinks Co.Answer Exercise 3
The main purpose of this exercise is to establish how wellstudents understand the use of IT within a business and
appreciate that having implemented IT systems it is, for mostbusiness organisations, impossible to return to manualsystems
Clearly, having implemented a system linking outlets to HQand with computerised stock control, it would be impossible
to manage the business without IT Townsfield have their own outlets linked to the head off ice
system for stock replenishment, they could have allcustomers linked directly to the head off ice system. Are
there delivery vans linked to a GPS (Global Satelli te System)so that they can be tracked and diverted by HQ if necessary?Do the delivery vans carry web enabled portable devices sothat all deliveries they make can be instantly uploaded to theHQ system?
Mathematics for Computing - 2.1
-
8/12/2019 Systems Development Visuals
51/202
NCC Education Limited, 2007V2 . 0
1
International Diploma in
Computer Studies
Systems Development
Mathematics for Computing
Mathematics for Computing - 2.2
-
8/12/2019 Systems Development Visuals
52/202
NCC Education Limited, 2007V2 . 0
2
ContentsNumber systems
Introduction to numberbase conversions
Non-decimalconversions
Arithmetic calculations
Data structures
Check digits
Statistics
Measures of spread ordispersion
Elementary probability
Mathematics for Computing - 2.3
-
8/12/2019 Systems Development Visuals
53/202
NCC Education Limited, 2007V2 . 0
3
Introduction
Members of systems development teams need to be
numeratesystems analysts, programmers and project
managers
The purpose of this chapter is to ensure that youhave the appropriate level of mathematicalknowledge to enable you to progress with the
courseA range of topics will be covered to just sufficient
depth to be useful, but no further
Mathematics for Computing - 2.4
-
8/12/2019 Systems Development Visuals
54/202
NCC Education Limited, 2007V2 . 0
4
Number Systems
DecimalBinary
Octal
Hexadecimal
Fractions and decimals
Mathematics for Computing - 2.5
-
8/12/2019 Systems Development Visuals
55/202
NCC Education Limited, 2007V2 . 0
5
Number BasesNumber system Decimal Binary Octal HexadecimalBase 10 2 8 16Digits available
0 0 0 01 1 1 12 2 23 3 34 4 45 5 56 6 67 7 78 89 9
A
BCDEF
In the case of the decimal system, this base is 10since there are ten different symbols used to show
quantities in that system (0 to 9)
Each number system has
a base, which indicates
the number of differentsymbols used in that
system
Mathematics for Computing - 2.6
-
8/12/2019 Systems Development Visuals
56/202
NCC Education Limited, 2007V2 . 0
6
Decimal
Hundreds Tens Units
102
101
100
2 5 8
10 is the base of the decimal system
Place values in the decimal system, move right to leftof a whole number
For number 258, the place value of 5 is tens i.e. 5 x 10
=50
Mathematics for Computing - 2.7
Binary
-
8/12/2019 Systems Development Visuals
57/202
NCC Education Limited, 2007V2 . 0
7
BinaryPowers of 2 2
5 2
4 2
3 2
2 2
1 2
0
Positional value 32 16 8 4 2 1
1 1 0 1 0 1
The base of the binary system is 2
The table above shows the meaning of the binary value 1110101
Multiplying positional values by the binary values and adding them
up:
1 x 32= 32 1 x 4 = 4
1 x 16 = 16 0 x 2 = 0
0 x 8 = 0 1 x 1 = 1
So if the number 53 was stored in a numeric form internally in a
computer, it would be stored as binary value 110101
Mathematics for Computing - 2.8
Octal
-
8/12/2019 Systems Development Visuals
58/202
NCC Education Limited, 2007V2 . 0
8
Powers of 8 84 83 82 81 80
Positional
value
4096 512 64 8 1
3 0 5 6
Multiplying values and adding them up
3 x 512 = 1536
0 x 64 = 0
5 x 8 = 406 x 1 = 6
Decimal total 1582
The table below shows how an octal value of 3056 would berepresented
Mathematics for Computing - 2.9
-
8/12/2019 Systems Development Visuals
59/202
NCC Education Limited, 2007V2 . 0
9
Hexadecimal
Powers of 16 163 162 161 160
Positional value 4096 256 16 1
2 F A 6
Multiplying values and adding them up:
2 x 4096 = 8192
F(15) x 256 = 3840
A(10) x 16 = 160
6 x 1 = 6
Total 12198
Mathematics for Computing - 2.10
-
8/12/2019 Systems Development Visuals
60/202
NCC Education Limited, 2007V2 . 0
10
Fractions and Decimals - 1
Multiplying values and adding them up:3 x 10 = 30
6 x 1 = 6
5 x 0.1 = 0.5
2 x 0.01 = 0.028 x 0.001 = 0.008
Total = 36.528
Powers of 10 103 102 101 100
. 10-1 10-2 10-3
Positional value 1000 100 10 1 0.1 0.01 0.001
3 6 5 2 8
Mathematics for Computing - 2.11
-
8/12/2019 Systems Development Visuals
61/202
NCC Education Limited, 2007V2 . 0
11
Powers of 2 23 22 21 20
. 2-1 2-2 2-3
Positional value 8 4 2 1 0.5 0.25 0.125
1 0 1 0 1 1
Multiplying values and adding them up:
1 x 4 = 4
0 x 2 = 0
1 x 1 = 1
0 x 0.5 = 01 x 0.25 = 0.25
1 x 0.125 = 0.125
Total = 5.375
Fractions and Decimals - 2
Mathematics for Computing - 2.12
-
8/12/2019 Systems Development Visuals
62/202
NCC Education Limited, 2007V2 . 0
12
Quotient Divide by Result Remainder
117 2 58 1
58 2 29 0
29 2 14 1
14 2 7 0
7 2 3 1
3 2 1 1
1 2 0 1
Reading the remainder column from the bottom up we see
that 117 Decimal =1110101 Binary
Decimal to Binary
Mathematics for Computing - 2.13
-
8/12/2019 Systems Development Visuals
63/202
NCC Education Limited, 2007V2 . 0
13
Decimal to Octal
Quotient Divide by Result Remainder 236 8 29 4
29 8 3 5
3 8 0 3
The result is 354, reading the remainder column inreverse
Mathematics for Computing - 2.14
-
8/12/2019 Systems Development Visuals
64/202
NCC Education Limited, 2007V2 . 0
14
Quotient Divide by Result Remainder
473 16 29 9
29 16 1 D
1 16 0 1
The result is 1D9, reading the remainder column in
reverse
Decimal to Hexadecimal
Mathematics for Computing - 2.15
-
8/12/2019 Systems Development Visuals
65/202
NCC Education Limited, 2007V2 . 0
15
Binary to Octal
Binary 000 001 010 011 100 101 110 111
Octal 0 1 2 3 4 5 6 7
The table can be used to do rapid conversions
from binary to octal
Mathematics for Computing - 2.16
-
8/12/2019 Systems Development Visuals
66/202
NCC Education Limited, 2007V2 . 0
16
Octal to Binary The process is the reverse of binary to octal and you can use
the same table
Any unnecessary zeros can be removed. For example:
Octal 2 7 4 3
Binary 010 111 100 011
The left hand zero is not needed, so we are left with
10111100011
Mathematics for Computing - 2.17
-
8/12/2019 Systems Development Visuals
67/202
NCC Education Limited, 2007V2 . 0
17
Binary to Hexadecimal look up tableBinary Hexadecimal Binary Hexadecimal
0000 0 1000 8
0001 1 1001 9
0010 2 1010 A
0011 3 1011 B
0100 4 1100 C
0101 5 1101 D
0110 6 1110 E
0111 7 1111 F
Split binary numbers into groups of four digits (24 = 16 which is the
hexadecimal base), zeros may be added if necessary
Binary 0110 1011 1011
Hexadecimal 6 B B
Notice that the leftmost group was padded on the left with an extra zero
Mathematics for Computing - 2.18
-
8/12/2019 Systems Development Visuals
68/202
NCC Education Limited, 2007V2 . 0
18
Hexadecimal to Binary
This reverses the previous process, just as
we saw with Octal to Binary conversions
For example:
Hexadecimal 9 A C
Binary 1001 1010 1100
Mathematics for Computing - 2.19
-
8/12/2019 Systems Development Visuals
69/202
NCC Education Limited, 2007V2 . 0
19
Binary Addition
Rules of binary addition
0 plus 0 produces 0
0 plus 1 produces 1
1 plus 1 produces 0 with
a carry of 1 into the next
most significant place
Look up tables make lifeeasier and less mistakes!
Decimal Binary
0 0
1 1
2 10
3 11
4 100
5 101
6 110
7 111
Mathematics for Computing - 2.20
Data Structures- Memory
-
8/12/2019 Systems Development Visuals
70/202
NCC Education Limited, 2007V2 . 0
20
Data Structures MemoryOrganisation
13 2AF 1 00 3 19 4 D4 5 00 6 00 7 11 8 C6 9 00 A 89 B 12 C
AF 1Address
Content
Mathematics for Computing - 2.21
-
8/12/2019 Systems Development Visuals
71/202
NCC Education Limited, 2007V2 . 0
21
Arrays
An array is a series of individually numbered
elements e.g T 3,4 or customer 7,15
An element is single unit of data, such as aninteger or a character
All the elements in an array are of the sametype
Mathematics for Computing - 2.22
-
8/12/2019 Systems Development Visuals
72/202
NCC Education Limited, 2007V2 . 0
22
Two Dimensional Arrays
3,43,33,23,13,0
2,42,32,22,12,0
1,41,31,21,11,0
0,40,30,20,10,0
-
8/12/2019 Systems Development Visuals
73/202
Mathematics for Computing - 2.24
-
8/12/2019 Systems Development Visuals
74/202
NCC Education Limited, 2007V2 . 0
24
Queue
Head (remove)
Tail (add)
Mathematics for Computing - 2.25
Check Digit Calculation
-
8/12/2019 Systems Development Visuals
75/202
NCC Education Limited, 2007V2 . 0
25
Check Digit Calculation
Check digits used to detect errors at data entry
The modulus 11 check digit system is one of the most
popular methods for calculating check digits Choose a random number weight the same length as the
number to be checked
Multiply the matching digits in the random number and the
entered number Add up all the numbers resulting from the multiplications
Divide the sum by 11, recording the remainder, if any
Subtract the remainder from 11; this is the check digit soappend it to the end of the number
Mathematics for Computing - 2.26
-
8/12/2019 Systems Development Visuals
76/202
NCC Education Limited, 2007V2 . 0
26
The Mean - 1 Eight numbers: 7, 21, 13, 17, 23, 18, 9, 20
Add them up (giving 128)
Then divide the total by the number of items (8), giving the mean of 16
This particular average can only be used with data which is quantitative
Note that the presence of even one value which is disproportionate to theothers may easily distort the value of the mean - for example if theoriginal set of values contained the 12 numbers:
3, 3, 4, 4, 4, 4, 5, 5, 6, 6, 6, 176
The mean would be the total (226) divided by the number of items (12)giving 18.83, which is not typical of the majority of the numbers
-
8/12/2019 Systems Development Visuals
77/202
Mathematics for Computing - 2.28
-
8/12/2019 Systems Development Visuals
78/202
NCC Education Limited, 2007V2 . 0
28
The Median Example: Take 14 values, arranged in order of magnitude:
10900 11600 12500 12700 13400 13800 14100 15700 16200
17200 17700 17800 18700 19000 The median is way, i.e. between 7th and 8th value
(14100 + 15700) = 14900, which is more easily found thanthe mean and it is not so affected by extreme values
The median of the seven items below, is 8:3 4 7 8 12 15 8164
it is exactly the same as the median of the seven items:3 4 7 8 12 15 17
Disadvantage is that the value of the median does not at allreflect the values of anything but the middle term(s) in adata set, whereas the mean is affected by each value
Mathematics for Computing - 2.29
-
8/12/2019 Systems Development Visuals
79/202
NCC Education Limited, 2007V2 . 0
29
Language Used Frequency
FORTRAN
C
JAVA
VISUAL BASIC
C++
SQL
24
43
8
16
14
1
The Mode The mode is defined to be the
value which appears mostcommonly in a list of data items
especially well suited to data
which is qualitative
In the table shown, the popularityof a number of different
programming languages wasinvestigated
if two values appear with equal
frequency, both are classified as
the modes and the distribution is
referred to as bimodal
Ease of determination - may beused for planning purposes
The mode is therefore C
Mathematics for Computing - 2.30
-
8/12/2019 Systems Development Visuals
80/202
NCC Education Limited, 2007V2 . 0
30
Frequency Distribution
Frequency Distribution of RepeatPurchases with a Loyalty Card
0
20
40
60
80
0 1 2 3 4 5 6 7 8
Mathematics for Computing - 2.31
Relative Frequency Distribution of PC Ages
-
8/12/2019 Systems Development Visuals
81/202
NCC Education Limited, 2007V2 . 0
31
RelativeFrequency
Distribution0.00
0.05
0.10
0.15
0.20
0.25
0.30
0.35
0.40
0.45
1 2 3 4 5 6
Department A
Department B
Age of PC 1 2 3 4 5 6 Total
Department A 16 10 8 4 2 1 41
Relative Frequency 0.39 0.24 0.20 0.10 0.05 0.02 1
Department B 5 3 3 3 2 1 17
Relative Frequency 0.29 0.18 0.18 0.18 0.12 0.06 1
Mathematics for Computing - 2.32
-
8/12/2019 Systems Development Visuals
82/202
NCC Education Limited, 2007V2 . 0
32
Measures of Spread
2 4 6 8 10 12 14 16 18 20
A
D0
0.5
1
1.5
2
2.5
3
Three Frequency Distributions
A
B
C
D
Mathematics for Computing - 2.33
-
8/12/2019 Systems Development Visuals
83/202
NCC Education Limited, 2007V2 . 0
33
Distribution RangeA 6
B 6
C 14D 6
The Range The range is the
simplest measure ofdispersion
found for any distribution
by subtracting the
smallest data value in thedistribution from the
largest
Mathematics for Computing - 2.34
-
8/12/2019 Systems Development Visuals
84/202
NCC Education Limited, 2007V2 . 0
34
Standard Deviation The features that we require of a good measure of dispersion
are
that every data value is taken into account that data values are weighted according to their
frequency
The standard deviation satisfies these criteria. Inmathematical terms this is shown as:
=
n
i
i
n
xx
1
2
1
)(
Mathematics for Computing - 2.35
-
8/12/2019 Systems Development Visuals
85/202
NCC Education Limited, 2007V2 . 0
35
Probabilities - Definitions Sample space the sample space is defined as the
set of all possible outcomes of an experiment
Event each possible outcome of an experiment isa sample point; a collection of sample points with acommon property is an event
Probability the probability of a sample point is theproportion of occurrences of the sample point in a
long series of experiments
Mathematics for Computing - 2.36
Relative Frequency
-
8/12/2019 Systems Development Visuals
86/202
NCC Education Limited, 2007V2 . 0
36
Definitions and Probability
Relative frequency measures the way in which oneparticular category occupies the distribution as awhole and in what proportion
ExampleHow likely is it, that a piece of equipment chosen at
random from Workshop W8, will be between 4 and 5 years
old?
We could view the result as a measure of the probability
that the age of the equipment lies between those limits
Mathematics for Computing - 2.37
S
-
8/12/2019 Systems Development Visuals
87/202
NCC Education Limited, 2007V2 . 0
37
SummaryWe have covered a range of basic mathematical
techniques The ability to use and understand numbers in any of
the common bases such as decimal, binary, octaland hexadecimal is frequently needed in systemdevelopment activities
There are other mathematical topics, for examplesets, logic, and particularly for graphics, matrix
manipulation. These topics are not required at thelevel of study for this module
System Development Life Cycles - 3.1
-
8/12/2019 Systems Development Visuals
88/202
NCC Education Limited, 2007V2.0
International Diploma in
Computer Studies
Systems Development
System Development Life Cycles
System Development Life Cycles - 3.2
C t t
-
8/12/2019 Systems Development Visuals
89/202
NCC Education Limited, 2007V2.0
Contents Software engineering
Project stages andproject control
The Waterfall li fe cycle
model The V model
Velotec training systemhistory
Prototyping
Velotec product datamanagement system
Rapid application
development The Spiral life cycle
model
System Development Life Cycles - 3.3
I t d ti
-
8/12/2019 Systems Development Visuals
90/202
NCC Education Limited, 2007V2.0
Introduction
This chapter will give a brief overview of:
history of software development leading to i t becoming an
engineering discipline
size and complexity issues
quality and productivity
Project stages and control
System Development Life Cycles (SDLC)
System Development Life Cycles - 3.4
S ft E i i
-
8/12/2019 Systems Development Visuals
91/202
NCC Education Limited, 2007V2.0
Software EngineeringSoftware engineering originated in 1968
in response to the software crisis
Need to regard software development assoftware engineering (disciplined andstructured)
Regarding software development as acraft causes problems
System Development Life Cycles - 3.5
S ft E i i
-
8/12/2019 Systems Development Visuals
92/202
NCC Education Limited, 2007V2.0
Software EngineeringDefinitions Software engineering is an engineering discipline,
using a systematic and organised approach(including theories, methods and tools) which isconcerned with all aspects of software productionfrom the early stages of systems specificationthrough to maintaining the system after it has goneinto use
Source: Ian Sommerville (2006) Software Engineering 8th Ed,Addison Wesley ISBN - 0321313798
System Development Life Cycles - 3.6
Prod cing Soft are is Diffic lt
-
8/12/2019 Systems Development Visuals
93/202
NCC Education Limited, 2007V2.0
Producing Software is Difficult Large software systems are the most complex products that
man has ever produced
Some of the most complex products include ships, largeaircraft, cars, worlds tallest buildings, worlds longestbridges
Small increases in the complexity of a system can mean thediff iculty of production increases almost vertically
Software is intangible (cannot see it)
Software is not subject to well-understood physical laws
System Development Life Cycles - 3.7
System Complexity
-
8/12/2019 Systems Development Visuals
94/202
NCC Education Limited, 2007V2.0
Difficulty
ofproduc
tion
Complexity of product
System Complexity
System Development Life Cycles - 3.8
Size is Important
-
8/12/2019 Systems Development Visuals
95/202
NCC Education Limited, 2007V2.0
Size is ImportantReasons why scaling does not work:
The complexity of a computer system does notincrease linearly with size measured in lines ofprogram code
The idea that adding more resources to a projectwil l allow it to be completed more quickly seems
reasonable in fact adding resources to a project in order to reduce the time needed for
completion usually has exactly the opposite effect - it extends the entire
project duration
System Development Life Cycles - 3.9
Quality
-
8/12/2019 Systems Development Visuals
96/202
NCC Education Limited, 2007V2.0
QualityWe expect that a consumer durable ( razor, hairdryer,
cell phone, TV, car etc) from a well-known supplier
will function well for its entire lifespan
Unfortunately, this is not the normal expectation for
softwareRecall the many software failures you read about
The level of quality we obtain from software productsis not the same as we expect from other products
Why is this?
System Development Life Cycles - 3.10
Productivity
-
8/12/2019 Systems Development Visuals
97/202
NCC Education Limited, 2007V2.0
Productivity Productivity is the amount of useful output
produced per hour
The productivity of two people using the same toolsand process is often quite different
Studies of programmer productivity (same taskswith the same tools) showed a variation between
programmers of at least 16:1Would any other industry accept such a large variation?
System Development Life Cycles - 3.11
Programmer Productivity
-
8/12/2019 Systems Development Visuals
98/202
NCC Education Limited, 2007V2.0
Programmer Productivity Studies of activity vary from one organisation to
another; the following was not unusual:
Programming 13%
Reading programs and manuals 16%Job communication 32%
Personal 13%
Miscellaneous 15%
Training 6%
Mail 5%
System Development Life Cycles - 3.12
Project Stages and Project
Control
-
8/12/2019 Systems Development Visuals
99/202
NCC Education Limited, 2007V2.0
ControlBrief Overview of Stages
Strategic study Business study
Feasibility study
Requirements analysisRequirements
specification
Logical systemsspecifications
Logical design Physical design
Coding
Testing Implementation
Maintenance
Phase out
System Development Life Cycles - 3.13
The Waterfall Life Cycle
-
8/12/2019 Systems Development Visuals
100/202
NCC Education Limited, 2007V2.0
The Waterfall Life CycleRequirements
Analysis
Requirements
Specification
System Design
Code and Test
Maintenance
Implement
System Development Life Cycles - 3.14
The Waterfall Life Cycle -Assumptions
-
8/12/2019 Systems Development Visuals
101/202
NCC Education Limited, 2007V2.0
The Waterfall Life Cycle -Assumptions
It is possible to divide project activities intodiscrete, isolated stages
Each stage is completed before the next one isstarted
Each stage relies on the information produced bythe previous stage, and only on that stage
A project plan can be constructed, based on
milestones, represented by the completion of eachstage
-
8/12/2019 Systems Development Visuals
102/202
-
8/12/2019 Systems Development Visuals
103/202
System Development Life Cycles - 3.17
Velotec Training SystemHistory
-
8/12/2019 Systems Development Visuals
104/202
NCC Education Limited, 2007V2.0
History
Staff need correct training and their skills need to be
monitored; for review against any potential newproject
All training organised by Human Resources (HR)
and carried out by specialist training companiesHR Director commissioned a training tracking
system
Two major issuesDynamic requirements
Reluctance to accept design
System Development Life Cycles - 3.18
Benefits of Prototypes
-
8/12/2019 Systems Development Visuals
105/202
NCC Education Limited, 2007V2.0
Benefits of Prototypes
Any misunderstanding between business managers
and analysts quickly resolved
Make an ideal tool for defining and discussing user
interaction
Easier to understand from users view point
Easier to create
System Development Life Cycles - 3.19
Drawbacks of Prototypes
-
8/12/2019 Systems Development Visuals
106/202
NCC Education Limited, 2007V2.0
Drawbacks of Prototypes Business managers may not understand the
purpose of a prototype
Some prototypes are so realistic that they give theimpression that the project is almost finished whilststill at the systems analysis stage
The effort required to produce a prototype may leadto the development team using it as a part of thenew system
System Development Life Cycles - 3.20
Velotec Product DataManagement System
-
8/12/2019 Systems Development Visuals
107/202
NCC Education Limited, 2007V2.0
Management System
Case Study:High performance products division had
a major problem with parts produced for
motor racing teamCommissioned a system
V Model used by systems development
There were significant problems with thefinished system
System Development Life Cycles - 3.21
Initial Strategy
Iterative Development
-
8/12/2019 Systems Development Visuals
108/202
NCC Education Limited, 2007V2.0
Systems Analysis
Requirements Analysis
Initial Strategy
Feasibili ty StudyReview
Maintenance
Implementation
Testing
Development
Design
Specification
System Development Life Cycles - 3.22
Rapid Development
Requirements
-
8/12/2019 Systems Development Visuals
109/202
NCC Education Limited, 2007V2.0
Code
Integrationtest
Unit test
Design
Prototype
analysis & spec.
System &acceptance test
System Development Life Cycles - 3.23
Create
Agree schedule Identify functionalprototype
FeasibilityBusiness study
DSDM
-
8/12/2019 Systems Development Visuals
110/202
NCC Education Limited, 2007V2.0
Implement
Userapproval &userguidelines
Train users
Review
designprototype
Design and Build
Iteration
Createfunctionalprototype
p yp
Agreeschedule
yReviewbusiness
Identifydesignprototypes
Reviewprototype
Create
designprototype
Implementation
FunctionalModel
Iteration
.
2
1
3
1
23
2
-
8/12/2019 Systems Development Visuals
111/202
System Development Life Cycles - 3.25
Summary
Software life cycle development models have been examined
-
8/12/2019 Systems Development Visuals
112/202
NCC Education Limited, 2007V2.0
Software life cycle development models have been examined
Two case studies used to illustrate the problems of theWaterfall model
Introduced the ideas of prototyping and iterative
development
Introduced two alternative life cycles, DSDM and the Spiralli fe cycle, used to demonstrate there are many alternatives
and in many organisations no standard is used, while inothers a standard is adopted, but does not always meet thedemands of the project
Software Analysis and Design Methods - 4.1
International Diploma in
-
8/12/2019 Systems Development Visuals
113/202
NCC Education Limited, 2007V 2 .0
International Diploma inComputer Studies
Systems Development
Software Analysis and Design Methods
Software Analysis and Design Methods - 4.2
Contents
Analysis and design methods
-
8/12/2019 Systems Development Visuals
114/202
NCC Education Limited, 2007V 2 .0
Analysis and design methods
Modelling techniques
A history of methods at Velotec
Some traditional methods
Object technology
Program specification
Software Analysis and Design Methods - 4.3
IntroductionS f i i f
-
8/12/2019 Systems Development Visuals
115/202
NCC Education Limited, 2007V 2 .0
Software engineering attempts to turn a craftdiscipline into an engineering discipline
Need for a software development life cycle
SDLC provides a framework for development
The heart of the development process is theanalysis and design of applications
Software Analysis and Design Methods - 4.4
Analysis and Design Methods
-
8/12/2019 Systems Development Visuals
116/202
NCC Education Limited, 2007V 2 .0
y gAnalysis methods are those that we use during the
requirements analysis and requirements definitionstages
where we try to discover exactly what is required by the
user
Design methods are used during the system designstage and are closely aligned with the coding
activity that follows
where we use structured methods and produce models
Software Analysis and Design Methods - 4.5
Choosing the Correct Method
Guidelines:
-
8/12/2019 Systems Development Visuals
117/202
NCC Education Limited, 2007V 2 .0
Guidelines:
Look for a method that is widely used
Look for a method that is adopted by governmentsand other important organisations
Look for a method that is freely available, notproprietary
Look for a method that reflects modern thinking
about life cycles and suits the organisation
Software Analysis and Design Methods - 4.6
Bohm and Jacopini*
Every possible system and every possible
-
8/12/2019 Systems Development Visuals
118/202
NCC Education Limited, 2007V 2 .0
Every possible system and every possibleprogram requires only the following three
types of construction:Sequencing
Selection
Iteration
*Bohm C and Jacopini G "Flow Diagrams, TuringMachines and Languages with Only Two FormationRules Communications of the ACM (1966)
-
8/12/2019 Systems Development Visuals
119/202
Software Analysis and Design Methods - 4.8
Data Model
-
8/12/2019 Systems Development Visuals
120/202
NCC Education Limited, 2007V 2 .0
Book
Borrower Author
Crows foot One relationship
Crows foot, manyrelationships
Software Analysis and Design Methods - 4.9
Data Flow Diagrams
-
8/12/2019 Systems Development Visuals
121/202
NCC Education Limited, 2007V 2 .0
Data Flow Diagrams show how data moves
within a system and where it is storedOne of the first types of models to be widely
used
Now a fundamental building block of manyanalysis and design methodologies
Comment on how easy to understand you
find the following models
Software Analysis and Design Methods - 4.10
Person Apply for membershipDFD
-
8/12/2019 Systems Development Visuals
122/202
NCC Education Limited, 2007V 2 .0
Completedapplication form
Person Apply for membership
Librarian
Member
Membership cardReception desk1
Change memberdetails
2
Delete memberdetails
3
LibrarianDetail changes
Member
Member left
M1 Member f ile
M1 Member file
Application form
Producemembership card
Software Analysis and Design Methods - 4.11
Context Diagram
-
8/12/2019 Systems Development Visuals
123/202
NCC Education Limited, 2007V 2 .0
Supplier
Chief l ibrarian
Member
Book processing
Delivery
New bookorders
Reservesbook
Returnsbook
Borrows
bookJoinslibrary
List of old books
Software Analysis and Design Methods - 4.12
Decomposition of DFDContextdi
-
8/12/2019 Systems Development Visuals
124/202
NCC Education Limited, 2007V 2 .0
Further detail
Lowest level DFD
Expands into
is supported by
diagram
Expands into
Mini-spec
Software Analysis and Design Methods - 4.13
Lib B k
Entity Life History
-
8/12/2019 Systems Development Visuals
125/202
NCC Education Limited, 2007V 2 .0
Library Book
Acquire Available Remove
Buy Gift Loan
Issue Return
Sell Scrapo o * o o
Sequences are represented by boxes
read left to right on the same level
Al ternatives are marked with a small o
in the top right hand corner of the boxRepetitions are marked wi th a small *
in the top right hand corner of a box
Software Analysis and Design Methods - 4.14
A History of Methods at
VelotecMost projects have not used any recognised
-
8/12/2019 Systems Development Visuals
126/202
NCC Education Limited, 2007V 2 .0
p j y gmethodology, relying entirely on the person
developing the project
Velotec has used some techniques asdescribed in recognised methodologies, suchas Data Flow Diagrams
Previous IS managers thought methodologieswere a waste of time
Software Analysis and Design Methods - 4.15
Structured Systems Analysis
-
8/12/2019 Systems Development Visuals
127/202
NCC Education Limited, 2007V 2 .0
Attempts at structure led to varioustechniques, including:
Data flow diagramsData dictionary
Decision tables and decision trees
Structured English and pseudocodeNormalisation of data
Software Analysis and Design Methods - 4.16
Jackson Structured
Programming (JSP)S 1 d l h bl b d fi i h i
-
8/12/2019 Systems Development Visuals
128/202
NCC Education Limited, 2007V 2 .0
Stage 1 model the problem by defining the inputand output data structures, using the tree-likestructure used in the ELH
Stage 2 transform the input/output models into astructural model for the whole system by looking forpoints of correspondence between items in theinput and output structures
Stage 3 expand the structural model into adetailed design model that specifies all theoperations needed for the complete system
Software Analysis and Design Methods - 4.17
SSADM
A variety of techniques are used including
entity l ife histories using a Jackson-like notation
-
8/12/2019 Systems Development Visuals
129/202
NCC Education Limited, 2007V 2 .0
entity l ife histories using a Jackson like notation
data modelling based on an entity relationship approach
data flow modelling
data normalisation
One of the most highly developed conventionalanalysis and design methodologies
A well-proven methodology that is freely availableand openly documented, used by many governmentdepartments for all projects
Software Analysis and Design Methods - 4.18
Object TechnologyBecame popular in the early 1990s
-
8/12/2019 Systems Development Visuals
130/202
NCC Education Limited, 2007V 2 .0
Became popular in the early 1990s
Has influenced much thinking about systemsanalysis and design
Has resulted in:
- Object Oriented Programming (OOP)- Object Oriented Analysis and Design (OOA
and OOD)
- Object Databases etc
Software Analysis and Design Methods - 4.19
Attributes of an Object - 1 Encapsulation
-
8/12/2019 Systems Development Visuals
131/202
NCC Education Limited, 2007V 2 .0
an object packages together data and the access methods
to that data the data within an object can only be changed by using
these methods
the object effectively hides the data from the outside worldMessages
the only way that an object can communicate is by means
of a message
a message can be passed between two objects and may
result in the object carrying out one of its methods
Software Analysis and Design Methods - 4.20
Attributes of an Object - 2 Inheritance
-
8/12/2019 Systems Development Visuals
132/202
NCC Education Limited, 2007V 2 .0
an object belongs to a class of objects that share the same methods
a new class can be defined that inherits the data structure andmethods of its parent class
the new class can override some of the methods of the parent class
and add new methods
inheritance from a single class can be further elaborated toinheritance from multiple classes
Polymorphism a word of Greek origin, meaningmany shapes in object technology terms, classes that are different can implement
the same message
Software Analysis and Design Methods - 4.21
Object Oriented Analysis and
Design
-
8/12/2019 Systems Development Visuals
133/202
NCC Education Limited, 2007V 2 .0
Based on objects
Does not mean a total break with the existingstructured analysis and designmethodologies
The Unified Modelling Language (UML) hasgained a lot of acceptance
Software Analysis and Design Methods - 4.22
PseudocodeDO WHILE there are more text records
-
8/12/2019 Systems Development Visuals
134/202
NCC Education Limited, 2007V 2 .0
DO WHILE there are more words in the text record
extract the next text wordsearch the word table for the extracted word
IF the extracted word is found
increment the words occurrence count
ELSE
insert the extracted word into the tableENDIF
increment the words-processed count
ENDDO at the end of the next record
read the next text recordENDDO when all text records have been read
Display the table
Software Analysis and Design Methods - 4.23
Structure DiagramProduce
invoice
-
8/12/2019 Systems Development Visuals
135/202
NCC Education Limited, 2007V 2 .0
invoice
Write title
Produce
invoice
body
Write
footer
Write itemdescription
Calculate
tax
Write
value
*Calculateinvoice
line
Software Analysis and Design Methods - 4.24
Start
Locate library
A process is
shown as a box
Flowchart
-
8/12/2019 Systems Development Visuals
136/202
NCC Education Limited, 2007V 2 .0
Fine? Processfine
No
Yes
y
member
Process
book returned
Another
book?
End
NoYes
shown as a box
A decision isshown as a
diamond
The flow of
processing is
shown as arrows
linking the
symbols
Software Analysis and Design Methods - 4.25
Decision TablesA decision is represented
-
8/12/2019 Systems Development Visuals
137/202
NCC Education Limited, 2007V 2 .0
A decision is represented
in a flowchart by the diamond symbol
in pseudocode by the IF ... ELSE statement
In a decision table, the question is asked firstfollowed by the answer
either Yes or No
Software Analysis and Design Methods - 4.26
Decision Table - Four BasicElements
-
8/12/2019 Systems Development Visuals
138/202
NCC Education Limited, 2007V 2 .0
The condition stub
The condition entryThe action stub
The action entry
Software Analysis and Design Methods - 4.27
Rules 21 3 4 5 6 7 8Decision Table
-
8/12/2019 Systems Development Visuals
139/202
NCC Education Limited, 2007V 2 .0
YCreditworthy?
Salaried?
Reject
Accept
-
-
-
N
Special person?
Y
Y N N N
Y Y Y
Y Y Y N N N N
N N NN
Y Y Y
-----
Software Analysis and Design Methods - 4.28
Simplified Decision Table
-
8/12/2019 Systems Development Visuals
140/202
NCC Education Limited, 2007V 2 .0
Creditworthy?
Salaried?
Reject
Accept
N
Special person? N
-
N
ELSE
-
-
-
Software Analysis and Design Methods - 4.29
Decision Tables - Useful
FeaturesSimple - easy for the user to understand
-
8/12/2019 Systems Development Visuals
141/202
NCC Education Limited, 2007V 2 .0
Simple easy for the user to understand
Complete and unambiguous - the analyst cancalculate the exact theoretical number ofrules to be specified
Statements of policy - they say nothing abouthow the policy is carried out
Working documents - like all good analysis
tools, the decision table is a useful workingdocument
Software Analysis and Design Methods - 4.30
Summary
Notations, methods and methodologies forsystems analysis and design
-
8/12/2019 Systems Development Visuals
142/202
NCC Education Limited, 2007V 2 .0
some notations such as simple flowcharts now
rarely used
other methods have matured and been put to use
in coherent methodologies
Everybody should be using an appropriate
methodology to suit their softwaredevelopment projects
Software Analysis and Design Methods - 4.31
Answer 4.1 - Exhaust Fitting
Context DiagramStock
-
8/12/2019 Systems Development Visuals
143/202
NCC Education Limited, 2007V 2 .0
Warehouse
Head Office
Customer
Operate workshop
Delivery
Order parts
Stockresponse
Requestswork
Pays for workStockquery
Sales returns
HR Department
Training request
Certi fied fitters
Software Analysis and Design Methods - 4.32
Answer 4.2 - ExhaustComponent ELH
-
8/12/2019 Systems Development Visuals
144/202
NCC Education Limited, 2007V 2 .0
Exhaust Part
Receive Inspect Use
Accept Return
o o Scrap Returno o
Fit o
Documentation and Standards - 5.1
International Diploma inComputer Studies
-
8/12/2019 Systems Development Visuals
145/202
NCC Education Limited, 2007V2 .0
Computer Studies
Systems Development
Documentation and Standards
Documentation and Standards - 5.2
Contents
The need for standards
-
8/12/2019 Systems Development Visuals
146/202
NCC Education Limited, 2007V2 .0
Standards and quality
Documentation and codingstandards
Types of documentation
Documentation and Standards - 5.3
Introduction
The purpose of this chapter is to show that there is much tobe gained from good documentation and compliance with
-
8/12/2019 Systems Development Visuals
147/202
NCC Education Limited, 2007V2 .0
be gained from good documentation and compliance with
appropriate standards
We have shown that by far the largest proportion of the lifecycle costs of a system can be absorbed in maintenance,
and that using appropriate standards and documentation is agood way to minimise those costs
In this chapter we wil l take these ideas and apply them morewidely, so that we can see how standards and documentationbenefit us all the way through the development life cycle
Documentation and Standards - 5.4
Standards
Used throughout the world
-
8/12/2019 Systems Development Visuals
148/202
NCC Education Limited, 2007V2 .0
Some examples are:the traffic light system
PC operating systemsfood standards
Can you think of any standardswhich apply to you?
-
8/12/2019 Systems Development Visuals
149/202
Documentation and Standards - 5.6
Standards and Quality
In order to improve quality we have first toha e a process that is ell eno gh defined to
-
8/12/2019 Systems Development Visuals
150/202
NCC Education Limited, 2007V2 .0
have a process that is well enough defined tobe repeatable and susceptible to monitoring
A standard provides the framework for this
repeatabilityThis is one of the reasons why written
procedures form part of Quality ManagementSystems
Documentation and Standards - 5.7
Good DocumentationAccessible
-
8/12/2019 Systems Development Visuals
151/202
NCC Education Limited, 2007V2 .0
Readable
Understandable
Correct
Controlled
Documentation and Standards - 5.8
Accessible
Documents need:
-
8/12/2019 Systems Development Visuals
152/202
NCC Education Limited, 2007V2 .0
Documents need:
a clear structure
a table of contents
a detailed indexpointers to other relevant documents
to be catalogued
-
8/12/2019 Systems Development Visuals
153/202
Documentation and Standards - 5.10
Correct
-
8/12/2019 Systems Development Visuals
154/202
NCC Education Limited, 2007V2 .0
Documentation should be subject to the fullverification and validation processis this the right thing to document?
is this documentation correct?
Correctness requires testing by means ofpeer review
Documentation and Standards - 5.11
Controlled
All the products of the software development lifecycle are subject to change, and this includes
-
8/12/2019 Systems Development Visuals
155/202
NCC Education Limited, 2007V2 .0
cycle are subject to change, and this includes
documentation Version control systems possess some features
that help to keep control over project products
a check in/check out facili tya baseline and release control capabili ty
the abil ity to create branches in the line of development
A system that does all this can be very complex,but it is necessary to maintain control ifdocumentation is to remain useful
Documentation and Standards - 5.12
Understandable
Documentation is intended to convey information
It can only do this if the reader is able to comprehend the
-
8/12/2019 Systems Development Visuals
156/202
NCC Education Limited, 2007V2 .0
text
Comprehension is based partly on style, but also on theassumptions made by the author about the expertise and
experience of the user
The writer should have a very clear idea about what can beassumed of the reader
Advisable to ask someone to proof read the document
Documentation and Standards - 5.13
Coding Standards - 1
Coding standards define rules that a
-
8/12/2019 Systems Development Visuals
157/202
NCC Education Limited, 2007V2 .0
programmer must follow
Using coding standards helps to produce code
that will be efficient, effective, easy to maintainand understandable by another programmer!
Internal standards usually define other aspectsof a programmer's work
Documentation and Standards - 5.14
Coding Standards - 2
Function per page, single entry/exit point
-
8/12/2019 Systems Development Visuals
158/202
NCC Education Limited, 2007V2 .0
Restrict scope of variables Restrict use of some code statements Standard for variable names uses date for calendar
date, not fruit date!! Never allow pet names or
family names
Use in-line comments to explain code
Documentation and Standards - 5.15
Types of Documentation - 1
Type Use Stage
Project Initiation
Document
Define scope of project FS, BS
-
8/12/2019 Systems Development Visuals
159/202
NCC Education Limited, 2007V2 .0
End of Stage Report Defines the status of developmentat the end of a project stage
FS - I
Data Flow Diagram Define processes and flows of data FS, RA, RS,
LSS, LD
Entity Life History How an entity changes over time FS, RA, RS,LSS, LD
Logical Data Model Relationships between entities FS, RA, RS,
LSS, LD
Flow Chart Show logic of system RA, PD(if at all)
Structure Diagram Shows the processing done by a program LD
Documentation and Standards - 5.16
Types of Documentation - 2
Decision Table Define complex logic LD
Program Listing Documents a program C
Type Use Stage
-
8/12/2019 Systems Development Visuals
160/202
NCC Education Limited, 2007V2 .0
Test Report Summarises testing results TTest Plan Describes how and what will be tested T
Test Case Describes a particular test T
Test Data Defines the data to be used with a test case T
Modification History Tracks changes to a system MUser Manual Describes how to use a system from users
perspective
I
System Manual Describes the operation of a system from a
technical viewpoint
M
Release Notes Describes what has changed since the last release
and any special installation requirementsI, M
Documentation and Standards - 5.17
Summary
Ensure you fully understand the purposes of
-
8/12/2019 Systems Development Visuals
161/202
NCC Education Limited, 2007V2 .0
notations, methods and methodologies forsystems analysis and design
ask yourself, who benefits from their use?
Every organisation should use an appropriatemethodology to suit their softwaredevelopment projects
Testing - 6.1
International Diploma inComputer Studies
-
8/12/2019 Systems Development Visuals
162/202
NCC Education Limited, 2007V2.0
Systems Development
Testing
Testing - 6.2
Contents
Defining testing
-
8/12/2019 Systems Development Visuals
163/202
NCC Education Limited, 2007V2.0
Types of testing
Designing and implementing tests
Planning and managing tests
Velotec testing
Testing - 6.3
Introduction
Testing is important you would hope any train, car or plane you use has been thoroughly
tested; increasingly software is controlling such vehicles
-
8/12/2019 Systems Development Visuals
164/202
NCC Education Limited, 2007V2.0
Why and when should you test?
What should you expect to achieve as a result oftesting?
How do you plan, what do you test and for howlong?
We will consider some of the issues involved withserious testing problems
Testing - 6.4
Defining Testing
The average persons definition:
testing makes products work and adds quality to them
-
8/12/2019 Systems Development Visuals
165/202
NCC Education Limited, 2007V2.0
Other definitions include: testing is the process of demonstrating that errors are not
present
testing shows that a program performs its intendedfunctions correctly
testing is the process of establishing confidence that a
program does what it is supposed to do
These definitions are all flawed in quite a seriousway
Testing - 6.5
Testing or V and V
When you read text books on testing you will find thatverification and validation is the name given to the checkingand analysis processes that ensure the software conforms to
-
8/12/2019 Systems Development Visuals
166/202
NCC Education Limited, 2007V2.0
its specification and meets the needs (requirements) of thecustomer. The difference between validation andverif ication was expressed by Boehm (1979). Sommerville*
Validation are we building the right product?
Verification are we building the product right?
* Software Engineering, Ian Sommervil le, Addison Wesley ISBN 0 201 39815
Testing - 6.6
Testing
Testing increases reliability, or suitability forpurpose
-
8/12/2019 Systems Development Visuals
167/202
NCC Education Limited, 2007V2.0
The process of testing is costly
Discovering and rectifying errors
Objective of testing is to find the most costeffective tests available to uncover errors in a
system
Testing - 6.7
What is a Good Test?
-
8/12/2019 Systems Development Visuals
168/202
NCC Education Limited, 2007V2.0
A successful test is one that finds anew error
A good test is one that has a highprobability of finding a new error
Testing - 6.8
Types of Error
Difficult to recognise
Not uncommon for suppliers of bespoke software
-
8/12/2019 Systems Development Visuals
169/202
NCC Education Limited, 2007V2.0
and customer to resort to l itigation
In order to define an error you need to know what
the system is supposed to do (specification)
Important that specifications are produced whichenable the design of tests to explore (use all)
programme code
Testing - 6.9
The V Model
Maintenance
Initial concept
Requirements definition
-
8/12/2019 Systems Development Visuals
170/202
NCC Education Limited, 2007V2.0
Tested modules
System design
Requirementsspecification
Acceptance test
Testedsystem
Integration and test
Code and unit test
Software design
Detailed design
Tested software
Tested system
Tested software
Testedmodules
Module design
-
8/12/2019 Systems Development Visuals
171/202
Testing - 6.11
We Cannot Test Everything
Would take too long if for example, Microsoft fully tested each new Windows
l ld th t t th k t?
-
8/12/2019 Systems Development Visuals
172/202
NCC Education Limited, 2007V2.0
release, would they ever get to the market?Too expensive
Labour intensive - good tests cannot be
automatedReal situation
warship test of software controlled torpedo
Testing - 6.12
Probability of Further Errors
errors
-
8/12/2019 Systems Development Visuals
173/202
NCC Education Limited, 2007V2.0
Errors already found
Probability
offurthere
Testing - 6.13
Types of Testing
Black box testing
White box testing
Testing through thelife cycle unit
-
8/12/2019 Systems Development Visuals
174/202
NCC Education Limited, 2007V2.0
package
integration
code inspection
system testing acceptance testing
beta testing
usability testing
conformance testing
Testing - 6.14
Black Box Testing(cannot see inside)
Data-driven
Input/output
F ti l
-
8/12/2019 Systems Development Visuals
175/202
NCC Education Limited, 2007V2.0
Functional
No knowledge of systeminternals
Tests use only standardinput interfaces ?
Testing - 6.15
White Box Testing(can see inside)
Logic-driven
Structural
Glass box
-
8/12/2019 Systems Development Visuals
176/202
NCC Education Limited, 2007V2.0
Glass box
Complete knowledge ofinternals
Tests can use specialinterfaces
Testing - 6.16
Types of System Testing
Used to discovermismatches between thesystem specification and thesystem actually produced
Functional testing
Volume testing
Stress testing
-
8/12/2019 Systems Development Visuals
177/202
NCC Education Limited, 2007V2.0
system actually produced
There are a number of
different types of systemtests that can be used tohighlight specific types oferror
Stress testing Usabili ty testing
Security testing
Performance testing
Documentation testing
Testing - 6.17
Acceptance Testing
A form of black box testing
Critical difference is that it is normally carriedb h f h
-
8/12/2019 Systems Development Visuals
178/202
NCC Education Limited, 2007V2.0
Critical difference is that it is normally carriedout by the customer or user of the system
Completion of acceptance testing is usually atrigger for a major stage payment and sign off
Often carried out using a previously defined
test plan and test cases
Testing - 6.18
Beta Testing
Copies of system released to trusted usersunder a non-disclosure agreement
-
8/12/2019 Systems Development Visuals
179/202
NCC Education Limited, 2007V2.0
Intended to supplement and follow on fromfull internal system testing designed to
uncover errors in field use of the system
Should never be a replacement for thoroughsystem testing
Testing - 6.19
Usability Testing
Investigates how easy a new system is to use
Determines whether the system behaves in an
acceptable way for specific types of user/specific
-
8/12/2019 Systems Development Visuals
180/202
NCC Education Limited, 2007V2.0
acceptable way for specific types of user/specifictasks
Points to be considered are:ease of learning
ease of use
flexibilityattitude
Testing - 6.20
Conformance Testing
Testing of hardware or software against a welldefined standard
-
8/12/2019 Systems Development Visuals
181/202
NCC Education Limited, 2007V2.0
Not usually undertaken by small and medium
sized organisations
Requires a great deal of careful planning and
in-depth knowledge of the relevant standards
Testing - 6.21
Regression Testing
When a system is in its maintenance phase, and even earlierduring its development, a large number of changes may bemade to the program code in order to correct errors
a significant risk that these changes may re introduce previously
-
8/12/2019 Systems Development Visuals
182/202
NCC Education Limited, 2007V2.0
a significant risk that these changes may re-introduce previously
corrected errors
Regression testing is designed to detect this type of error re-introduction
a series of tests that are run in succession and that are known to be
effective in finding the errors that have already been removed
usually automated regression test tools are widely used by maintenance programmers
Testing - 6.22
Test Teams
Testing must be a destructive process if it isto be successful
A successful test is one that discovers an
-
8/12/2019 Systems Development Visuals
183/202
NCC Education Limited, 2007V2.0
A successful test is one that discovers anerror
Need a team of people independent of thedevelopment team, who have an incentive tofind errors
Costs are very high
Testing - 6.23
Designing and ImplementingTests
How do we design tests?
Desk checking and dry running code
Simple testing occurs when a program is compiledC t f h li f d
-
8/12/2019 Systems Development Visuals
184/202
NCC Education Limited, 2007V2.0
Simple testing occurs when a program is compiledCount use of each l ine of code
Further errors can be detected at run-time by theOperating System or the interpreter, if using aninterpreted language
Difficult to test for logic
There is no substitute for human based testing
Testing - 6.24
Integrated Development
Environments (IDE)
These software tools make the process of editing,compiling linking running recording and
-
8/12/2019 Systems Development Visuals
185/202
NCC Education Limited, 2007V2.0
These software tools make the process of edit ing,compiling, linking, running, recording anddebugging results more convenient
Used to handle all the files that make up a largeproject
Typically offer some programmer oriented features
Testing - 6.25
Design Guidelines for Effective
Tests
Need to look actively for conditions that are
likely to cause a system to fail
-
8/12/2019 Systems Development Visuals
186/202
NCC Education Limited, 2007V2.0
likely to cause a system to fail
For black box testing scenarios we must lookat systems in terms of input, output and datastorage
Testing - 6.26
Further Reading on Testing
For those of you who wish to understand moreabout the whole process of testing, perhaps if you
intend to become a software engineer, we suggest
-
8/12/2019 Systems Development Visuals
187/202
NCC Education Limited, 2007V2.0
g , ggyou read the chapter on
Software Testing in the text book:
Software Engineering, Ian Sommerville, Addison WesleyISBN 0 201 39815
Testing - 6.27
Design Guidelines - Inputs
Inputs:- screen layout - ease of use, clarity, handling of incorrect entries