STUDOCU Summary
STUDOCU Summary
2. Basic Concepts
5) Servers:
Some introductory concepts: Computer only for calculation and storage
(no screen, no keyboard)
1) Hardware: Ex: mail server, web server, ...
Increasingly present in our modern society
6) Internet:
RAM-Random Access Memory
- the biggest internetwork
- input ROM-Read Only Memory - in OECD penetration rate of + - 83%
- output
- computer: 7) Computer architecture:
Fundamental organization of the computer
• memory: RAM/ROM system
• CPU (Central Processing Unit) - Phase 1: mainframe
external memory: RAM\ROM
internal memory: hard disk,USB-sticks,CD - Phase 2: PC & client server
2) Software:
- Phase 3: browser / cloud
- sequence of orders formulated by programs
- conversation into machine language: 8) Processes:
the set of symbolic instruction codes A business process is a sequence of
usually in binary form that is used to steps / actions with the aim of generating
represent operations and data in a a product or a service
machine
Start in '90: need for operation between
- modules: the various actors / departments within
• reuse an organization
• less complex
• splitting into sub-problems 9) Information System:
• error module easier to find the combination of IT hardware, software,
processes and people who use it
• collaboration with several people
- besides programs, software also can be
DATA!!!
3) Database:
- organized collection of data stored in a
computer
- relational data
4) Network:
- multiple computers to communicate and
exchange data
- types: PAN, LAN, MAN, WAN
- protocols:
• TCP: Transmission Control Protocol
• IP: Internet Protocol
Downloaded by Eline Jacobs (eline.jacobs.9620@gmail.com)
lOMoARcPSD|11463819
3.2) Repeat
lOMoARcPSD|11463819
Operators in Python
2.3. Controle statement – While
3. Comments / annotations
• Explanation written between instructions
• Very helpful for a person to (better)
understand what a program or piece of code
does
• Is ignored by the compiler
Downloaded by Eline Jacobs (eline.jacobs.9620@gmail.com)
lOMoARcPSD|11463819
5. Functionalities
Process Modeling Sequence flow
- to understand an IT system, you must A sequence flow:
first understand the processes in which indicates in which order the
the system is used activities are performed
- process modeling is used to analyze,
document and create processes Example Booking a Flight:
- graphical notations make processes
readily understandable
BPMN
- Business Process Model and Notation Pool
- current version: BPMN 2.0
- rich notation compared to flow chart A pool represents
- designed to be readily understandable the central entity
or an external
by all business stakeholders participant no
being, existence
Elements
Lane
A lane represents
a sub-partition of
a pool or another
lane; it is either a
department or a
role
Start event and End event Example Producing a Car:
A start event:
indicates the trigger
of a process
An end event:
indicates the
result of a
process
Task
Sub-process
A task is an activity that is not
broken down to more detail A sub-process:
is an activity that
can be described
into more detail by
a separate process
diagram
Downloaded by Eline Jacobs (eline.jacobs.9620@gmail.com)
lOMoARcPSD|11463819
Message flow
Fork/Join
A message flow:
indicates the flow of A fork has multiple outgoing
the process across pools sequence flows of which all are
taken in parallel
Message events A join can be used to close a fork
A start message event: Example Advertising:
indicates a message being
received
An end message event:
indicates a message being
sent
Example Producing a Car:
Time events
A start time event:
indicates begin time for a
process to start
An intermediate time event:
indicates the time that needs
to elapse to continue the
process
Example Library reservation:
Gateway
A gateway has multiple
outgoing sequence flows of
which only one is taken
A gateway can also be used
to close another gateway
Example Library:
Artifacts:
Generalization
A generalization denotes an "is a"
relationship between two elements
Example:
Multiplicity
Multiplicity
indicates how
many objects may
participate in a
given relationship
Downloaded by Eline Jacobs (eline.jacobs.9620@gmail.com)
lOMoARcPSD|11463819
Aggregation
An aggregation is a special association
that indicates a weak 'part of' relationship
It is used when the conditions of a
Attributes composition are not met
- If two classes are associated with Generalization
multiplicities equal to one and one class has
no other associations, then that class can A generalization denotes an 'is a'
be represented as an attribute of the other relationship between two elements
class It is not an association
- The properties of a class are its
attributes and associated classes
Database
Example Organization: - A database stores data and relationships
- Data is stored in tables, which have rows
and columns
- Each row in a table stores data about an
instance
- Data can first be modeled using a class
diagram, after which it can, with relative
ease, be transformed to database tables
Class to table
- A class can be transformed to a table,
Association class simply by giving the table the name of
class and creating a column in the table
An association class for each attribute of the class
describes additional - However, for this, the class must meet
data stored for the certain requirements
association
First normal form (1NF)
Example Organization:
- Columns have a type and every row must
have a single value for each column of the
corresponding type
- The table should have no duplicated
columns or rows
- There must be no significance in the order
of either rows or columns
Downloaded by Eline Jacobs (eline.jacobs.9620@gmail.com)
lOMoARcPSD|11463819
Keys
Mapping associations with multiplicity 1
- A key is a combination of one or more
columns that is used to identify rows in a - Associations are mapped to a database
relation using foreign keys
- A composite key is a key that consists of - A foreign key is the primary key of one
two or more columns relation that is placed in another relation to
- A candidate key is a key that determines form a link between the relations:
all of the other columns in a relation • A foreign key can be a single column or a
composite key
• The term refers to the fact that key
values are foreign to the relation in which
they appear as foreign key values
- An association with a class with
multiplicity 1 (or0..1) is mapped by adding a
foreign key to the table of the other class
Example:
• A PERT chart allows the visualization of • Information should be gathered from all
- The dependencies between tasks different stakeholders relevant for the
project:
- Duration
- Internal business users
- Early start/end
- External business users (e.g. suppliers)
- Late start/end
- Customers
- Calculation and visualization of the critical
path - Management
- Executive management
• Helps with the allocation of resources - Technicians
(people) • Relevant issues
- Are all these requirements consistent?
- Are all these requirement formulated
exhaustively?
- Do the users of the system really know
the requirements?
• Possible sources of information include:
- Existing documents
- from within the company (forms,
procedures,..)
- from outside the company (standards,
already documented analyses)
• A Gantt chart allows a project manager to - Interviews with stakeholders
follow up the continuation of the project - possible variant: questionnaire
- On schedule? - Observations within the company
- Behind? - which tasks are executed?
- Ahead? - in which order (processes)?
- which information is created/required?
2. Analysis
• The analysis phase is concerned with • Possible sources of information include:
identifying the requirements of the IT - workshop/brainstorms
system which needs to be developed in the - a few meetings in which all stakeholders
project are together and interactively engaged
- What should be the specific functionality in formulating the requirements
of the system be? - e.g. use group decision support between
- more precise and less generic than systems (GDSS)
formulated in the planning phase
- what should the system do? - solve some contradictions between
stakeholders immediately
• Phase which is situated at the border - create momentum regarding the project
between business and IT
- requires the involvement of the business! - develop intermediate prototypes
• Goal = become domain expert for the - users can test intermediate versions
system to e developed and immediately give their feedback vs.
at the end
Downloaded by Eline Jacobs (eline.jacobs.9620@gmail.com)
lOMoARcPSD|11463819
• The analysis should result in a set of models • Programming can be done in several ways
of what the system should do - by in-house programmers or hired
• Possible techniques and artifacts/ consultants
documents -through external consultants/outsourcing
- Use cases - buying and modifying/configuring an off-
- Data models (ERD, class diagrams, ORM,.) the-shelf application (see part Il)
- it should also be studied which
information should be derived 5. Testing
- Process models (BPMN, DFD, YAML, Petri During testing, it should be tested whether
nets,..) the resulting software application matches
the requirements of the organization
• types of tests/controls
3. Design - validation
• Define the overall architecture of the
- does the application meet the actual
application (i.e., how should the fynctional of the end users? do they accept it?
requirements by attained) - was the right application build?
- which large building blocks will the application - verification
need/have? - does the application work according to
- how will they integrate (determine the the requirements as formulated during
interfaces)? the analysis phase? (right input/output)
- how will the application integrate with - unit tests (test modules) and system tests
external applications (again: interfaces)? (test whole application and the interaction
- which frameworks/technologies will we use? between modules)
- is not a simple 1:1 mapping problem! - security application controls
• Define the algorithms required for the - verify whether the application can only
application process authorised data in a complete
- how to calculate the route from location A and precise way
to B? - regarding input (all data, right format?),
- how to sort a set of numbers? throughput (correct calculations?) and
•Artefacts created are mainly data and output (all data, correctly presented?)
process models - typically, artefacts such as testing plans
enriched with technical details
are created and executed in
- e.g., interaction with other systems,
databases, etcetera this phase (compare expected results with
actual results)
4. Implementation A test plan is a document or schedule that
• During implementation, the formulated describes the scope, approach, resources and
functional requirements and design are timing of the intended test activities. It
transformed into programming code compares expected results with actual
results
- the actual programming instructions are
coded
- artefact created is typically the source
code (could become quite large)
Downloaded by Eline Jacobs (eline.jacobs.9620@gmail.com)
lOMoARcPSD|11463819
6. Go-live - adaptive
Different go-live strategies - maintenance in order to keep the
• "big bang": all users need to make use of software usable in a changing
the system as of the the same moment technological environment (e.g., due to
- riskful changes of data input/file formats,
- possible mitigation = fall-back scenario (i.e., changed hardware and software
back-up by old system until new system has systems/platforms)
proven its value) - preventive
• parallel strategy - not changing the actual behavior, but
- old and new system run a certain period of "refactoring" the structure of the code
time in parallel (i.e enhancing readability of code that
- secure but expensive has currently not shown itself in terms
• pilot study of an error to the user)
- a certain division or department "tries out" • Delivered artefact: updated and revised
the new system, afterwards the rest implemented software
follows if succesful
• gradual way 8. Project management
- functionalities are gradually introduced • A IT project a unique undertaking to
- needs interfacing between new and old develop an application:
application to ensure data-integration (or - non-routine
manual duplication?) - upfront formulated goal
- per business process, market, etcetera - beginning and end
• delivered artefact: implemented software - balancing
7. Maintenance - timing constraints
• In this phase, the application is adapted to - costs (e.g., human resources)
correct bugs, add new features, allow - quality/scope
compliance with new technological
frameworks, etcetera • Project failure factors (Standish group)
• Types (Lientz and Swanson, 1980): - Incomplete or changing requirements
- corrective - Limited user involvement
- correct identified problems of the - Lack of executive support
existing program, including emergency - Lack of technical support
fixes and the correction of bugs (e.g.,
- Poor project planning
abnormal termination of program)
- Unclear objectives
- perfective
- Lack of required resources
- incorporating new functionalities (e.g.,
new business requirements, higher
performance)