What is Software Engineering?
a systematic approach to the evolution of software development using well-defined scientific principles, techniques, and procedures
What is UXD?
User Experience Design (UXD) is the process of defining the experience the users will have when they use the software
What are 4 command-line utilities addressed in the student text?
ping, tracert, ipconfig, and netstat
What is a software development environment?
a program that allows the developers to compose or modify source code.
When beginning a new project, which git command is used to create a repository in the current directory?
git init
(git clone is used when beginning from an existing project)
What are the challenges/constraints for software engineer's?
project’s deliverables, timing, and budget
What does the law say about Accessibility?
The law dictates that all federal agencies must give disabled employees and members of the public access to information comparable to the access available to others.
What does the command "ping" do?
tests network connectivity and performs name resolutions to see if a network device is reachable
sends Internet Control Message Protocol (ICMP) packets to the targeted host and waits for an ICMP echo reply
What is Source Control?
Source control is the practice of managing/tracking changes to code. It’s a vital component of the development process.
Which command is used to send files to the staging area?
git add
What are the goals of Software Engineer's?
Validity, Deliverability, and Reliability
Bonus questions for an extra 100 points: Describe all 3
What are the 5 dimensions to Interaction Design? (In order for 200 bonus)
words, images, space, time, and behavior.
What does the command "ipconfig" do?
display the current configuration of your network devices and allow you to configure them.
What is an Integrated Development Environment (IDE)?
An IDE is a set of tools or software suites used by developers to maximize productivity and efficiency. It consists of a source code editor for writing programs as well as a debugger, compiler, and designer functions
Which command is used to save a snapshot of the project?
Git commit
What is the difference between a Compiler, Interpreter, and an Assembler?
Compilers read the entire code at once and create machine code as an object file.
An assembler translates assembly language code into machine understandable language.
Interpreters read and transform code line by line. The interpreter also requires a runtime environment.
What is Information Architecture and what is the Gestalt Principle?
Information Architecture (IA) is a discipline that focuses on how data is laid out for the user. The goal of information architecture is to ensure the flow of data is intuitive and understandable.
Gestalt Principles - Visual perception of objects in relation to each other, including similarity, continuity, proximity, symmetry, and closure.
What does the command Tracert do? (Bonus 200: What are the 3 main uses?
provide information about the path a packet takes from your computer’s network to the destination device. The tracert command sends packets to a destination, asking each device along the way to reply when it forwards the packet.
• To see the location of where a packet gets lost
• To determine the location of where packets are delayed
• To see the IP addresses of each hop along the route of the packet
What is a Repository?
A repository is a centralized system of all edits, changes, or historical versions (snapshots) of a software project. It stores information in the form of a file-system tree,
Which commands are used to update the repository?
pull/push
What are the 5 Software Engineering principles that support our overall goals?
Accuracy, Completeness, Abstraction, Uniformity, Modularity.
What are the 6 principles for UXD?
• User-Centered Design
• Information Architecture
• Interaction Design
• Visual Design
• Accessibility
• Usability
What does the command "netstat" do?
gives you important insight into what your network connection is doing at any given moment. It allows you to monitor network statistics while enabling you to display and view network data such as:
• Active network connections (-a)
• Routing tables (-nr)
• Network interfaces (-i)
• Network protocol statistics (-s)
netstat you can quickly see if there is a suspicious connection from your computer to the network.
What are Source Control Management Tools?
Source control management tools are used to track modifications to a source code repository. The tool will track a running history of changes to a code base and resolve conflicts when merging updates from multiple contributors. Along with tracking your code changes, it produces a revision history, and allows you to revert to previous snapshots of the project as needed.
Which command allows you to view all available configuration settings?
git config --list