CISC. 3140 - FINAL EXAM STUDY GUIDE
SSH - Answers :Secure Shell (a network protocol for secure transfer of data between
computers).
VCS - Answers :Version control system, software development tool used to help teams
log, track, and manage changes to source code over time.
Regular Expression - Answers :A notation for defining all the valid strings of a formal
language or a special text string for describing a search pattern.
CSV - Answers :Comma separated values, has header that details the information in
the data column, followed by rows of data.
Server Log - Answers :Keeps track of status of server, when people
connect/disconnect, errors, etc.
GNU Make - Answers :A tool which controls the generation of executables and other
non-source files of a program from the program's source file.
GNU AWK - Answers :A general-purpose scripting language designed for advanced text
processing. It is mostly used as a reporting and analysis tool.
YAML/YML - Answers :Yet Another Markup Language. A human-readable data-
serialization language. It is commonly used for configuration files and in applications
where data is being stored or transmitted.
JSON - Answers :JavaScript Object Notation. It is an open standard file format and data
interchange format that uses human-readable text to store and transmit data objects
consisting of attribute-value (key-value) pairs.
DFD - Answers :Data Flow Diagram; A visual representation of the information flow
through a process or system.
SDLC - Answers :Software Development Life Cycle. Stages include:
1) Requirements - End goal of this phase is to create a project plan, develop critical use
cases, define the end user, system requirements, determining inputs and expected
outputs, etc.
2) Design - Look of the software is curated, inputs and outputs are modeled,
wireframing (Wireframing, Lo-Fi, Hi-Fi).
3) Scheduling - Determining what needs to be done for the project to progress, division
of tasks.
4) Implementation - Building the software.
, 5) Testing - Software is tested, making sure that it functions as designed, inputs
produce expected outputs, etc.
6) Delivery - Handover to client, can also be the deployment phase if the product is a
mobile app or SaaS. Documentation is produced (for end users: manual/use
instrunctions). Release notes/change logs to whomever is managing/maintaining the
software.
Git - Answers :Example of a VCS, has an interactive GUI, but can be used via a CLI.
Git is a decentralized, this means that to edit, developers download the source code
onto their local machines to work and make edits. Scales well for larger projects.
GitHub - Answers :Online service for developers who use Git to upload or download
resources. GitHub is decentralized, meaning, developers can make local copies of the
repository to make changes to the code.
Subversion - Answers :SVN, is an open source software versioning and revision control
system. It is centralized, a server acts as the main repository which stores every version
of code.
Centralized - Answers :A main server acts as the master repository that contains all of
the versions of the code. To work on any project, the user or client needs to pull the
code from the master repository to their local machine.
In other terms we can say, you need to take an update from the master repository and
then you get the local copy of the code in your system.
Decentralized (distributed) - Answers :Instead of one single repository which is the
server, here every single developer or client has their own server and they will have a
copy of the entire history or version of the code and all of its branches in their local
server or machine.
Basically, every client or user can work locally and disconnected which is more
convenient than centralized source control and that's why it is called distributed.
Git Workflow - Answers :Working copy, stage changes (specific files or many files or
branches). From the stage you can commit the changes (can add a commit message as
well). You can then push the committed changes to the online repo.
Shell Script - Answers :A simple file in a Mac or Linux based operating system that
contains one or more commands.
Has .sh file extension. Has many variations (BASH - Bourne Again Shell, ZSH - Z Shell,
Corn Shell).
SSH - Answers :Secure Shell (a network protocol for secure transfer of data between
computers).
VCS - Answers :Version control system, software development tool used to help teams
log, track, and manage changes to source code over time.
Regular Expression - Answers :A notation for defining all the valid strings of a formal
language or a special text string for describing a search pattern.
CSV - Answers :Comma separated values, has header that details the information in
the data column, followed by rows of data.
Server Log - Answers :Keeps track of status of server, when people
connect/disconnect, errors, etc.
GNU Make - Answers :A tool which controls the generation of executables and other
non-source files of a program from the program's source file.
GNU AWK - Answers :A general-purpose scripting language designed for advanced text
processing. It is mostly used as a reporting and analysis tool.
YAML/YML - Answers :Yet Another Markup Language. A human-readable data-
serialization language. It is commonly used for configuration files and in applications
where data is being stored or transmitted.
JSON - Answers :JavaScript Object Notation. It is an open standard file format and data
interchange format that uses human-readable text to store and transmit data objects
consisting of attribute-value (key-value) pairs.
DFD - Answers :Data Flow Diagram; A visual representation of the information flow
through a process or system.
SDLC - Answers :Software Development Life Cycle. Stages include:
1) Requirements - End goal of this phase is to create a project plan, develop critical use
cases, define the end user, system requirements, determining inputs and expected
outputs, etc.
2) Design - Look of the software is curated, inputs and outputs are modeled,
wireframing (Wireframing, Lo-Fi, Hi-Fi).
3) Scheduling - Determining what needs to be done for the project to progress, division
of tasks.
4) Implementation - Building the software.
, 5) Testing - Software is tested, making sure that it functions as designed, inputs
produce expected outputs, etc.
6) Delivery - Handover to client, can also be the deployment phase if the product is a
mobile app or SaaS. Documentation is produced (for end users: manual/use
instrunctions). Release notes/change logs to whomever is managing/maintaining the
software.
Git - Answers :Example of a VCS, has an interactive GUI, but can be used via a CLI.
Git is a decentralized, this means that to edit, developers download the source code
onto their local machines to work and make edits. Scales well for larger projects.
GitHub - Answers :Online service for developers who use Git to upload or download
resources. GitHub is decentralized, meaning, developers can make local copies of the
repository to make changes to the code.
Subversion - Answers :SVN, is an open source software versioning and revision control
system. It is centralized, a server acts as the main repository which stores every version
of code.
Centralized - Answers :A main server acts as the master repository that contains all of
the versions of the code. To work on any project, the user or client needs to pull the
code from the master repository to their local machine.
In other terms we can say, you need to take an update from the master repository and
then you get the local copy of the code in your system.
Decentralized (distributed) - Answers :Instead of one single repository which is the
server, here every single developer or client has their own server and they will have a
copy of the entire history or version of the code and all of its branches in their local
server or machine.
Basically, every client or user can work locally and disconnected which is more
convenient than centralized source control and that's why it is called distributed.
Git Workflow - Answers :Working copy, stage changes (specific files or many files or
branches). From the stage you can commit the changes (can add a commit message as
well). You can then push the committed changes to the online repo.
Shell Script - Answers :A simple file in a Mac or Linux based operating system that
contains one or more commands.
Has .sh file extension. Has many variations (BASH - Bourne Again Shell, ZSH - Z Shell,
Corn Shell).