0% found this document useful (0 votes)
22 views

Tutorial 3

The document discusses several systems development methodologies including: - The waterfall/SDLC methodology which is structured and rigid, requiring clear requirements upfront. - Rapid application development (RAD) which focuses on quickly building working models and getting early user feedback in compressed iterations. - Agile development which uses incremental changes with a focus on quality and delivering working software frequently in short iterations. - Lean methodology which focuses on developing a minimum viable product and gathering feedback to determine requirements and next steps.

Uploaded by

cangelo.kluska
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
22 views

Tutorial 3

The document discusses several systems development methodologies including: - The waterfall/SDLC methodology which is structured and rigid, requiring clear requirements upfront. - Rapid application development (RAD) which focuses on quickly building working models and getting early user feedback in compressed iterations. - Agile development which uses incremental changes with a focus on quality and delivering working software frequently in short iterations. - Lean methodology which focuses on developing a minimum viable product and gathering feedback to determine requirements and next steps.

Uploaded by

cangelo.kluska
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

Tutorial 3

Task 2

Systems development lifecycle (SDLC)- Created to manage large software projects running
on corporate mainframes.
- Structured and risk averse
- Requires clear, upfront understanding of what the software is supposed to do, do
not amenable to design changes
- Similar approach to assembly line process, where it’s clear to all stakeholders what
the end product should do
- Major changes are costly and difficult to implement
- Developed for large, structured projects

System Analysis- phase when one or more analysts work with different stakeholder groups
to determine the specific requirements for the new system
- No programming
- Procedures are documented, key players/users are interviewed, and data
requirements are developed
- System requirements document finalised

Waterfall methodology- different way to describe SDLC methodology. It represents how


each step is a separate part of the process.
- Only when one step is completed another one can begin
- Criticized for being rigid, allowing movement in only one direction (forward in the
cycle)

Rapid application development (RAD)- focus on quickly building a working model of the
software, getting feedback from users and use it to update the working model (to finally
reach final model).
RAD methodology phases:
- Requirements planning – overall requirements and teams are defined with
determining feasibility
- User Design (use Joint Application Development (JAD))- create design of the system
by representatives of user work collaborating, connecting people to create new
system not the smaller systems
- Construction – application develops, working with users, build next version of the
system and changes can be made as developing the program
- Cutover – switching from old system to the new software, time is crucial (usually
during low activity)
It’s kind of compressed version of SDLC as some steps are squished together. However, it
requires less documentation and better for small projects, due to less resources needed.

Agile Development- methodologies that use incremental changes with a focus on quality
and attention to detail, each increment is released in a specific period of time.
- Goal: provide the flexibility of an interactive approach while ensuring quality product
- Blocks move one at a time and those who don’t fit are returned through feedback
and modified
Characteristics:
- Small cross-functional teams that include development team members and users
- Daily status meeting to discuss the current state of the project
- Short time-frame increments
- Demonstrate progress to stakeholders
Main goal is to provide flexibility of an iterative approach while ensuring quality

Lean Methodology – focuses on taking an initial idea and developing a Minimum Viable
Product (MVP). This is a working software application with just enough functionality to
demonstrate the idea behind the project.
- Development team gives potential users to review and give feedback
o Feedback through direct observation and discussion
o Feedback through usage statistics gathered from the software itself
- Then determine whether to continue or change strategy (pivot)
Main difference between iterative vs. non-iterative
- The full set of requirements for the system are known when the project is launched,
with each iteration released, statistics and feedback are gathered to determine the
requirements.

End-User Computing/Development (EUC) - when a person who is skilled in a [articular


program (spreadsheet or database) is called to build smaller applications for use by their
own department, might not be trained in programming or app development but are adept
with computers.
- Advantages
o Brings development of applications closer to those who will use them
o Allows for software to be created more quickly, if it departments are blocked
o Reduce strain on IT department
- Disadvantages
o May end up with several applications that perform similar functions so they
will be insufficient and duplicate the effort
o Provide different results for the same app = confusing
o Developed by person without or little formal training in programming. This
way it needs to be resolved by IT department

Feasibility analysis – ensure that the new system has a greater benefit to the organization
- Economic feasibility – measure the costs and benefits of the new system
- Technical feasibility – ensure that the organization has sufficient hardware, software,
and personal resources to develop and support the proposed system
- Operational feasibility – willingness and ability of management, users, and
information systems staff to build and use the proposed system

Output is a statement of scope and objectives (project charter) plus a feasibility report

Generations of programming languages


- First generation – (machine code), programming done in the format the
machine/computer can read. Set actual ones and zeros using binary code
- Second generation – (assembly language), uses English-like phrases instead of
machine-code to make it easier to program
- Third generation – (source code), not specific to type of hardware, similar to spoken
languages, and mostly complicated. Convert the source code into machine code,
producing an executable file.
- Fourth generation - enable fast application development using interfaces and
environments. Have a very specific purpose (database interaction, report-writing).
Can be used with very little formal training and allow for quick development.

Compiler/interpreter – converts the programmer’s source code into machine language so it


can be executed/run on the computer

(CASE) computer-aided software engineering – allow a designer to develop software with


little or no programming, simply make it more efficient. Also called Integrated Development
Environment (IDE)
- Include tools: editor, help system, complier/interpreter, debugging tool, as well as
check-in/check-out mechanism.

Director cutover – switching from the old system to the new software by making the old
system unavailable. + is very fast and least expensive implementation method. – have to
most risk is it’s not prepared properly or there is operational problem

Pilot implementation – subset of the organization (pilot group) starts using new system
before the rest of the company. Have smaller impact on the company and allows for the
support team to focus on a smaller group of individuals. Resolve problems with new
software within this small group.

Parallel operation – both the old and new system are used simultaneously for limited
period of time. + less risky (najmniej ryzykowny, najbezpieczniejszy)– more expensive as
work is duplicated and support is needed for both systems.

Phased implementation – new applications are gradually implemented with the


corresponding functions being turned off in the old system. More conservative and allow
slow change.

Cross platform development – building a mobile app for both iOS and Android
Requirements planning - it is a part of RAD methodology. Requires that system is defined,
team identified, and feasibility determinate.

Mobile app development – different from building mobile device


- Breakthrough in component technologies – smaller and more energy-efficient
components than those in computers
- Sensors have unlocked the notion of context – GPS, gyroscopes, cameras, and other
things that enable for time, location, and other benefits
- Simple, purpose-build, task-orientated apps are easy to use – narrower in scope,
need to be intuitive and not require training
- Immediate access to data extends the value proposition – cloud-base services
provide access to data in near real-time, from anywhere
- App stores have simplified acquisition – standardised development processes and
app requirements make it easier

Task 3

What system development methods exist?


- System development life cycle
- Rapid application development
- Agile methodologies
- Lean methodology

Why IT lead to higher or lower employment levels?


- I think it depends how we look at it to be honest, one will say it create jobs when
other it doesn’t. For example, in 1998-2008 2.5 million jobs were lost when each
year 2.67 were created. During this time most of the jobs were actually lost due to
the business failure or other problems. Only part of it were jobs caused by
technological changes and caused new types of jobs like web designer, social media
manager or YouTube creator.

Why are some jobs more/less susceptible to computerisation? Which factors determine
the susceptibility to computerisation?
- Jobs that are related to transportation, logistics, office, administration, production as
well as employment in service occupation are at risk. In other words, jobs that
require low-skill and low-wage can be easier relocated to not computerised part.
Additionally, all non-cognitive task is easier to be substituted than the cognitive
ones. This is related to the fact that cognitive tasks require knowledge work which
can be hard to substitute by the machine.

You might also like