Question 1
Which configuration management tool has the highest usage percentage according to the provided data?
Correct Answer:
Git
Explanation:
Git is recognized as the most widely used configuration management tool among the options provided due to several compelling reasons. It is an open-source version control system that allows developers to track changes in their codebase effectively. Its popularity stems from its distributed nature, enabling multiple users to work independently on their own local repositories before merging changes into a central repository. Git’s robust branching and merging capabilities facilitate experimentation and parallel development, making it particularly appealing for teams that require agile and iterative workflows. Moreover, its extensive integration with various development tools and platforms, along with a strong community support, contributes to its high adoption rate in both individual and enterprise-level projects. The increasing reliance on collaborative development practices and the significance of version control in modern software engineering practices have further solidified Git's position at the forefront of configuration management tools. Thus, the data showing Git with the highest usage percentage aligns with its established reputation and effectiveness in managing software projects.
Question 2
What is a significant factor contributing to high costs in software projects?
Correct Answer:
Changing software after it has been deployed
Explanation:
The significant factor contributing to high costs in software projects is the changing software after it has been deployed. Once software is released, any required changes—whether due to bugs, evolving user needs, or shifts in technology—can be quite costly. This is because modifications in a live environment can lead to considerable expenses in terms of time and resources. When software is updated post-deployment, it often requires revisiting the design, coding, and testing phases, which can dramatically increase the workload for development teams. Additionally, changes might affect interconnected systems or other functionalities, necessitating further changes and testing. This domino effect amplifies costs associated with project management, coordination, and quality assurance. On the other hand, while investments in hardware and regular maintenance fees also affect the overall software project budget, they don't typically account for the extensive costs associated with adapting software to new requirements after it has been deployed. The complexity of the development staff can introduce challenges, but it is the ongoing need to modify software that most directly correlates with escalating costs and resource allocation.
Question 3
Which of the following risks affects the software quality/performance?
Correct Answer:
Product risks
Explanation:
The correct answer, which pertains specifically to product risks, addresses factors that directly impact the quality and performance of the software being developed. Product risks include issues related to the software’s functionality, usability, reliability, and overall performance. For instance, if there are uncertainties regarding the software's ability to meet user requirements or technical specifications, it can lead to defects or subpar performance once deployed. This directly correlates with how well the software meets the needs of its users and stakeholders. Product risks can stem from various elements, such as untested assumptions regarding technology choices, design flaws that were not anticipated, or inadequate performance under specific scenarios. Effectively managing these risks is crucial, as they influence the end product's ability to function as intended and fulfill its purpose effectively. In contrast, project risks are more centered on the management side, addressing the timeline and resources needed to complete the project, while business risks focus more broadly on the implications for the overall business strategy. Resource risks involve the availability and capacity of personnel and tools essential for development, which, while important, do not directly determine the performance characteristics of the software product itself.
Question 4
What is the goal of defining a prototype in the software engineering process?
Correct Answer:
To demonstrate concepts and explore design options
Explanation:
Defining a prototype in the software engineering process primarily serves the purpose of demonstrating concepts and exploring design options. Prototyping allows developers and stakeholders to visualize and interact with a preliminary version of the software application. This iterative process facilitates the gathering of feedback, which can lead to improvements and refinements before the final design is locked in. By creating a prototype, teams can test ideas, validate requirements, and uncover potential issues early in development. This greatly aids in ensuring that the final product aligns with user expectations and desired functionality. Prototypes can vary in fidelity, ranging from low-fidelity sketches to high-fidelity interactive models, depending on the stage of development and the specific goals of the prototype. The other options do not encapsulate the primary role of a prototype. For instance, while creating a final product is an end goal, it is not the primary intention of a prototype, which is more about exploration and validation. Verifying compliance with regulatory standards is often achieved after the prototype stage, during more formal testing phases. Similarly, finalizing user team roles and responsibilities is part of project management rather than the prototyping process itself. Thus, the essence of prototyping in software engineering is centered around demonstrating concepts and exploring various design options to guide the development
Question 5
What does the process of system building involve?
Correct Answer:
Assembling program components, data, libraries, and compiling
Explanation:
The process of system building primarily involves assembling program components, data, libraries, and compiling them to create a functioning software system. This encompasses integrating various code modules, ensuring that they work together as intended, and compiling the code into an executable format. This step is crucial because it lays the foundation for successful software execution and operational performance. The assembly of components can involve making sure that any dependencies are correctly managed and that the necessary libraries are included for the software to run. While other aspects like testing, documentation, and deployment are important in the overall software development lifecycle, they are not part of the direct system building process. Testing and debugging focus on identifying and fixing issues within the software, user documentation is about providing necessary information to end-users, and deploying software involves making it available for use in a production environment. However, system building specifically pertains to the preparation and assembly of the software before it is tested or deployed.
Question 1
Exam overview

About this Exam

Welcome to the comprehensive study guide for Arizona State University’s CSE 360: Introduction to Software Engineering. This foundational course is a critical milestone for Computer Science and Software Engineering majors at ASU. Exam 1 is the first major assessment, designed to test your grasp of the fundamental principles that govern how complex software systems are built, managed, and maintained.

This course moves beyond simple programming and introduces the rigorous processes required in professional software development. Whether you are taking this course in person at the Tempe campus or online through ASU Online, this exam evaluates your ability to think like a software engineer from day one. Mastering these initial concepts is essential not only for passing this course but for succeeding in all subsequent upper-division software classes and in your future career.

More details

Additional Information

What the Course Entails and Exam Details

CSE 360 establishes the vocabulary, methodologies, and lifecycle concepts used in the industry. Exam 1 typically covers approximately the first three to four weeks of the semester, focusing on the "why" and "how" of software engineering.

To succeed on Exam 1, you must have a solid command of the following core topics covered in lectures and the required textbook (often Object-Oriented Software Engineering: Using UML, Patterns, and Java by Bernd Bruegge and Allen H. Dutoit, or similar ASU-selected materials):

  • The Software Life Cycle (SDLC): You need to know the various models, including Waterfall, Spiral, and Agile methodologies. Be prepared to compare and contrast them, understanding the advantages and disadvantages of each and when they are appropriately applied in industry projects.
  • Requirements Engineering: This is a crucial topic. You must understand the difference between functional and non-functional requirements. You will be tested on how to elicit, analyze, and document these requirements clearly using techniques like FURPS+ (Functionality, Usability, Reliability, Performance, Supportability).
  • UML Modeling Fundamentals: Exam 1 almost certainly involves Unified Modeling Language (UML). You must be fluent in creating and interpreting basic class diagrams (showing classes, attributes, methods, and relationships like association, inheritance, and composition) and use case diagrams (showing actors, use cases, and system boundaries).
  • The Software Process: Understanding the maturity of software processes, often introduced via frameworks like CMMI (Capability Maturity Model Integration), is frequently included.
  • Professional Ethics: Software engineers operate under a code of ethics. You should be familiar with the ACM/IEEE Software Engineering Code of Ethics and be able to apply it to hypothetical scenarios.

 

What to Expect in the Final Exam

The specific format of Exam 1 (e.g., multiple choice, short answer, diagrams) is determined by your specific instructor (e.g., Prof. J. Chen, Prof. H. Davulcu, etc.). However, across all sections, Exam 1 is designed to be rigorous and comprehensive.

  • Exam Format: The exam is typically a mix of question types. Expect multiple-choice questions testing definitions and concepts, scenario-based questions where you must choose the best methodology or ethical path, and drawing or analysis questions where you must create or interpret basic UML diagrams.
  • Time Limit: For in-person students, this is usually a standard 50-minute or 75-minute class period. For ASU Online students, the exam is typically administered via a secure online proctoring service (like Honorlock or Respondus Monitor) and may have a slightly longer time window, often around 60 to 90 minutes.
  • Passing Score: The passing score is determined by the course syllabus and standard ASU grading policies. A "C" or better is typically required to advance in the major. You should aim for a high score on Exam 1, as it sets the foundation for your grade in this demanding course.
  • Materials: This is almost always a closed-book, closed-notes exam unless your instructor specifies otherwise.

 

 How to Study and Exam Centers

Success on CSE 360 Exam 1 requires active studying, not just passive reading.

  • Master the Terminology: The biggest hurdle for many students is the sheer volume of new vocabulary. Create flashcards for every definition (e.g., "User Story," "Association," "Coupling," "Cohesion," "SRS").
  • Practice UML Diagramming: Do not just look at UML diagrams in the book; draw them. Take a simple system (like a library system or an ATM) and sketch out the class diagram and a use case diagram from scratch. Your diagrams must use correct notation (arrows, multiplicity, etc.).
  • Review Lecture Slides and Recitation Materials: ASU instructors often pull key concepts and examples directly from their lecture decks and recitation worksheets. These are highly targeted study guides.
  • Form Study Groups: Explaining concepts like Agile vs. Waterfall to a peer is one of the best ways to solidify your own understanding and identify gaps in your knowledge.
  • Take Advantage of Office Hours: If you are confused about a UML relationship or the difference between verification and validation, go to your professor’s or TA's office hours immediately.
  • Where and How to Take the Exam:
    • In-Person Students: You will take the exam in your regularly scheduled classroom or a designated alternate testing location on the ASU Tempe, Polytechnic, or West campus, as proctored by your instructor and TAs.
    • ASU Online Students: You will take the exam remotely using an online proctoring service (such as Honorlock or Respondus Monitor). You are required to have a functioning webcam, microphone, and a stable internet connection, and you must perform a mandatory environment scan before beginning the test. Details will be provided in your Canvas course shell.

 

 Job Opportunities from the Course

CSE 360 is not just an academic hurdle; it provides the foundational knowledge required for highly sought-after roles in the tech industry. Understanding these core engineering principles is essential for landing internships and full-time positions.

This course unlocks career paths such as:

  • Software Engineer: Responsible for the full life cycle of software development.
  • Software Developer: Focuses on building and coding applications based on defined requirements.
  • Systems Analyst: Works to analyze and improve complex business systems, often focusing on requirements and process modeling.
  • Quality Assurance (QA) Engineer: Ensures the software meets specified quality standards and requirements (V&V).
  • Technical Project Manager: Uses SDLC knowledge to plan, initiate, and manage software projects.
  • UI/UX Designer: Understands user requirements and translates them into effective system designs.
  • IT Consultant: Advises organizations on how to use information technology to meet their business objectives.
Quiz information

Frequently Asked Questions

The complete question count is available after full access is unlocked.
No fixed duration is currently configured for this quiz.
Question explanations are included where they are available in the quiz content, helping you review the reasoning after answering.
Yes. You can retake the practice test again as you continue studying during your available access period.
After your access is confirmed, you can continue into the complete practice exam from this quiz flow.
Unless explicitly stated otherwise, this page provides independent practice material for study and exam preparation and is not the official examination itself.
Keep studying

Related Questions