You are on page 1of 2

Computer Quarter 2 Study Notes Part II: The Order of the Software Life Cycle

LESSON 1: The Software Lifecycle 1. Requirements Analysis


Part I: The types of people involved in a Software -This is the time where the Systems Analyst gathers data

Life Cycle 2. System Design


1. Systems Analyst -This is the time where the Systems Designer stars working
-The person to gather data for the software, plans what will be in it 3. Construction
and what’s the purpose, concept or idea of the software -This is the timer where the programmer stars working
2. Systems Designer
-This person will be basing his work depending on what the 4. Testing and Validation
Systems Analyst gathered. The Systems Designer is the one to -Where testers for the software test what the programmer has
make designs of the software and this will serve as the guide for worked on to ensure there are no bugs and the software is working
the programmer just fine

3. Programmer 5. Maintenance
-The person that will be PROGRAMMING the software, he will be -Where furthur bugs get fixed and updates and more features gets
in charge in making things work, he will base of his work off what added to the software. This is also the longest part of the Life
the Systems Designer has worked on. He will be in charge of what Cycle
programming language he will use and anything else related with
programming.
Part III: Types of Errors
1. Functional Errors
Some Questions and Answers: -Type of Errors that is caused by the incorrect implementation of
1. What factors are currently hindering us from achieving the requirements by the users. Basically, it is an error in which the
programmer had a miscomunnication with the Systems Analyst
desired result? and had programmed the wrong thing
Analyst
2. Non-Functional Errors
2. What available data are there for us to work with? -Errors that the programmer has caused, these are basically
Analyst bugs/glitches. These types of errors we’re not intended to happen.
3. What programming languages do I use? LESSON 2: Generations of Programming
Programmer Languages
4. What must I do to ensure compliance with the design First Generation
specification? -Vacuum Tubes
Programmer -Machine languages
-Binary code
5. Am I confident that all program modules can later be integrated -Machine dependent
into one coherent system?
Second Generation
Programmer -Transistors
6. How do I plan to adress the requirements from the previous -Assembly Languages, Assembler
-Low-level languages
phase?
Designer Third Generation
-Integrated circuits
7. How do I translate the requirements into tangible system
-small-scale integrations
functions? -medium scale integration
Designer -High-level languages
-Portable languages
8. How should I design my system to bring about optimum result?
-Structures
Designer
Fourth Generation
9. What other technical or technological considerations can I take
-large scale integration
into account to further imrpove the design of the system? -very large scale integration
Designer -English like commands
-Declarative Languages
10. What are the results or output needed?
Analyst Fifth Generation
-parallel processing architectures
11. How do I maximize the capabilities of the programming
-AI
language I'm using for this particular system?
Sixth Generation
Programmer
-massively parallel architectures, parallel/vector architecutures
12. What are the current processes that allow us to produce these LESSON 3: Programming Paradigms
results? 1. Functional Programming
Analyst -Is an expression-oriented programming paradigm. Computations
are specified through mathematical functions that evaluate input
expressions and convert them into output values.
-Functional programming languages are “what”-oriented. They
describe the problem to be solved rather than specifiy the actual
steps required for the solution.
2. Imperative
-Refers to a mood expressing an essential order or command. It
describes computation in terms of a program state and the actions
that change that state.
3. Subtask
-When tasks are split in to several smaller ones that run
individually in parallel programming.
4. Imperative Programing
-The oldest and most traditional model of computing. It also
reflects the principles of the Von Neumann Architecture.
-An imperative programming language is “how’-oriented. It
specifies how the computations is to take place. Therefore, an
imperative program is a sequence of commands or instructions for
the computer to follow.
5. Von Neumann Architecture
-The first practical stored-program computer architecture in the
mid-1940s. It is also comprised of the five classical components
(input, output, processor, memory, and datapath)
-Consists of explicit commands or instructions to be executed,
performing operations on data and modifying values of program
variables and the external environment
6. Logic Programming
-In this type of programming, programs are written as logical
statements that describes the properties the solution must have. The
program is viewed as a logical theory and computation is basically
the search for proof. This is also based on the concept of logical
deduction in symbolic logic. This also has high potential for AI
applications.
-Logic programming could also be thought of as being “what”-
oriented. Because they do not specify how to compute the solution,
but rather consists of a declarative description of the problem as a
set of rules. Solutions are then inferred from these rules.
7. Class
-When a group of objects have the same properties, operations, and
behavior
8. Object Oriented Programming
-In this programming, data structures are viewed as objects, and
programmers create relationships between these objects.
9. Concurrent
-Means happening or occurring at the same time.
10. Parallel Programming
-Is a computer programming technique that allows for the
execution of two or more operations at the same time.
11. Parallel
-Suggests that the processes run side-by-side yet independently of
each other.
12. Distributed Programming
-Is used when parallel programming requires a multi-processor or
multi-computer.

You might also like