Category: Computer Science

  • Computer Science Question

    Assignment due Thursday, March 5, 2026 by 11:59pm

    ICS 432 Software Engineering

    Assignment 1: Designing a Secure Financial Trading Platform

    Integration of Software Engineering Principles, Design Patterns, and Best Practices

    Objective

    Design a prototype for a Financial Trading Platform that addresses real-world challenges, adheres to industry standards, and demonstrates mastery of software engineering principles.

    Instructions

    Part 1: Real-World System Requirements & Prioritization (25 points)

    1.** Critical System Considerations** (Refer to Week 2 Lecture 1: Requirements Gathering in Finance): – Identify 5 critical considerations (e.g., regulatory compliance, data integrity, scalability) for building a financial trading platform. – Hint: For each consideration:

    Explain its importance (e.g., “Regulatory compliance ensures adherence to laws like SEC rules to avoid legal penalties”).

    Describe how you would implement it (e.g., “Use automated audit trails for compliance tracking”).

    1. Agile Prioritization (Refer to Week 2 Lecture 2: Prioritizing Features):
      • Use the MoSCoW method to categorize the following features:

    Real-time market data feeds

    Two-factor authentication (2FA)

    Portfolio and Account Management

    Customizable Dashboards and Themes

    Order Management

    Automated fraud detection

    High-frequency trading support

    Social trading integration

    - Justify your categorization (e.g., "Automated fraud detection is a **Must-have** to comply with anti-money laundering regulations").

    Part 2: System Design & Architecture (30 points)

    1.** SOLID Principles** (Refer to Week 3 LP1: SOLID Principles): – A class TradeProcessor handles order validation, execution, logging, and notifications.

    Identify 2+ SOLID violations (e.g., SRP violation due to multiple responsibilities).

    Redesign the system into modular classes (e.g., OrderValidator, TradeExecutor, AuditLogger).

    1. Design Patterns (Refer to Week 3 LP3: Creational Patterns and Week 4 LP1/LP3: Structural/Behavioral Patterns):
      • Creational: Use the Factory Method Pattern to create different order types (e.g., MarketOrder, LimitOrder).
      • Structural: Apply the Adapter Pattern to integrate a legacy risk assessment module into your modern system.
      • Behavioral: Implement the Observer Pattern to notify users when stock prices hit predefined thresholds (e.g., email/SMS alerts).
    2. SDLC Alignment (Refer to LP3: SDLC & Best Practices):
      • Map your design to the SDLC phases:

    Requirements: How did stakeholder interviews shape your design?

    Testing: How will stress testing ensure performance during market volatility?

    Part 3: Implementation & Security (30 points)

    1.** Code Development** (Refer to Week 4 LP3: Behavioral Patterns): – Write a Python snippet for the Command Pattern to enable undo/redo functionality for trade cancellations. – Implement the Proxy Pattern to rate-limit API requests (e.g., 100 requests/sec per user).

    1. Security & Testing (Refer to LP3: Testing & Security):
      • Propose 2 security measures (e.g., encryption for trade data, input validation) to mitigate risks like SQL injection.
      • Design 3 unit tests for the OrderValidator (e.g., invalid order amounts, duplicate trades).

    Part 4: Deployment & Reflection (15 points)

    1.** Containerization** (Refer to LP1: Introduction to Software Engineering): – Draft a Dockerfile to containerize your platform, including steps to install dependencies and expose port 8080.

    1. Trade-off Analysis (Refer to Week 3 LP3: Creational Patterns):
      • Compare the Singleton Pattern (for managing user sessions) with the Object Pool Pattern. Discuss pros/cons in scalability.
    2. Future Improvements (Refer to Week 4 LP3: Behavioral Patterns):
      • Suggest 1 design pattern (e.g., Strategy Pattern for dynamic pricing algorithms) to enhance the platform.

    Submission Guidelines

    Submit a PDF report (max 10 pages) with:

    o UML diagrams for key components.

    o The fully commented code adhering to PEP 8 standards.

    o Explicit references to pre-class materials (e.g., “The Adapter Pattern aligns with Week 4 LP1 recommendations for integrating legacy systems”).

    Due Date: Week 8 of the semester

    Grading Rubric

    Real-World Analysis: Depth of considerations (25%)

    Design Quality: SOLID compliance, pattern correctness (30%)

    Implementation: Security rigor, test coverage (30%)

    Reflection: Practicality of deployment and future improvements (15%)

    Note:

    ** Where to Refer**:

    o** SOLID Principles**: Week 3 LP1 (SOLID in Health Record Systems).

    o Design Patterns: Week 3 LP3 (Creational), Week 4 LP1 (Structural), Week 4 LP3 (Behavioral).

    o SDLC & Security: LP3 (SDLC phases, testing best practices).

    o Containerization: LP1 (Docker setup, environment isolation).

    Requirements: In Depth Guide With All Details and Steps

  • Interactive Computer Vision Tool with GUI “WINDOWS”

    Submission: PDF documentation (Primary resource) + .py script + demo video link

    Objective

    Design and implement a standalone desktop computer vision tool using OpenCV and Tkinter. The tool must provide a graphical user interface (GUI) that allows users to open a local image or access the webcam, apply image processing and vision operations,** adjust parameters interactively**, and save the output. The emphasis is on correct implementation, usability, parameter control, and clear documentation.

    Functional Requirements (What your tool must do)

    A. Input & I/O

    Open Local Image

    i) File Open (Tkinter menu), ii) Supported formats: JPG, PNG, BMP (at least)

    Access Live Webcam

    i) File Access Live Webcam, ii) Display live feed in the main window, iii) Take Snapshot button to freeze a frame and switch to static-image mode

    Save Output

    i) File Save As, ii) Save the currently displayed image (processed result)

    B. GUI & Interaction

    Implement** at least** the following GUI features:

    • Menu bar (File / Tools)
    • Buttons (e.g., Apply, Snapshot)
    • Trackbars / sliders for real-time parameter control
    • Text box for numeric input (with validation)
    • Clean exit and proper resource release (camera, windows)

    C. Image Processing & Vision Operations (Choose 10 total, with constraints)

    You must implement at least 10 operations overall, satisfying the minimum coverage below. You may implement more for bonus credit.

    1. Foundations & Color (Choose 2)

    • RGB channel access and manipulation
    • Grayscale conversion
    • Brightness / contrast adjustment
    • HSV (Hue/Saturation/Intensity) adjustment
    • Color blindness simulation (matrix-based)

    2. Image Statistics (Implement all)

    • Histogram computation and display
    • Histogram equalization

    3. Point & Local Operators (Choose 2)

    • Contrast stretching
    • Median filter (kernel size via text box)
    • Gaussian smoothing (kernel size + )
    • Sharpening (Laplacian or custom kernels)

    4. Edge Detection (Choose 2)

    -** Sobel** (kernel size + threshold defined as a ratio of mean)

    • Canny (control t1, t2, aperture size)
    • Laplacian of Gaussian (LoG) (, kernel size, threshold)

    5. Segmentation (Choose 2)

    • Global thresholding
    • Adaptive thresholding (block size, method, etc.)
    • Contour detection
    • OR one advanced method:
      • Mean Shift (sp, sr, pyramid levels)
      • Superpixels (SLIC: n_segments, compactness)

    Implementation Rules:

    ##** i) Python only, **

    ##** ii) OpenCV + Tkinter only (no PyQt, no web frameworks)**

    ##** iii) Must run locally (not Colab), your tool will be tested by the instructor via calling your script from terminal **

    • AI tools may be used, but **you must understand and explain your code in the technical interview **
    • Code must be well-structured (functions/classes, not one giant script)

    Your tool should handle edge cases (such as no image loaded, invalid parameters). These should not cause a crash; instead, the user should be informed (for example: Please load an image before running the function) ) and when necessary parameter values should be set to default (when they are set outside of acceptable ranges (e.g. kernel size = -1))

    Deliverables:

    IMPORTANT: In your submission, you should upload the PDF as primary resource and a zip file containing both the PDF and the script as a secondary resource.

    1.** PDF Documentation (36 pages): Primary resource to upload**

    Your PDF must include:

    • **Overview of the Tool **
      • A short description of the main features of the tool
    • **List of Implemented Functionalities **
      • One subsection per operation
    • **Parameters Table **
      • For each operation:
        • Parameter name
        • Type (slider/textbox/menu)
        • Valid range
        • Effect on output
    • **GUI Screenshots **
      • Annotated where appropriate

    2. Python Script (****.py**): To pack together with the PDF file and upload as a secondary resource **

    Your script must:

    • Launch the GUI
    • Support image and webcam modes
    • Provide interactive controls for selected operations
    • Save outputs correctly
    • Be readable and commented

    **File name example: **cv_gui_assignment1_.py

    3. Video Demonstration (24 minutes): To include in the first page of the PDF

    Include** link** (Google Drive) in your PDF (at the beginning of the) document showing the following user operations:

    • Opening an image
    • Using **at least 4 different operations **
    • Adjusting parameters live
    • Accessing webcam and taking a snapshot
    • Saving the output

    Bonus (Optional)

    • Side-by-side original vs processed view
    • Preset buttons (e.g., Low Noise, Strong Edges)
    • Keyboard shortcuts

    Academic Integrity

    This is an individual assignment. You may discuss ideas, but code and documentation must be your own. Any AI-assisted code must be understood and defensible during evaluation.

    If this description overwhelmed you, consider doing the following list of first (sample implementation for task11 is available ).

    Requirements: In Depth with ALL Details and Steps

  • Week 7 – Welcome to {Your Esports Event Name Here!

    In a short broadcast, give us the first 5 minutes of what your Esports Event will look like! Get creative, and demonstrate why your event is something to attend!

    For further guidance, think about the following points while creating your video:

    1. What is the name of your event? Make sure you let us know!
    2. What game are you excited to play?
    3. What is the order of events for the day?
    4. How will people be able to watch?

    Share your broadcast either via a VOD or uploading a Kaltura video.

    Requirements: 2p

  • Homework 7

    Below, we have provided a suggested format to help you organize your work. Youre welcome to use it or adapt it to your own style just be sure your final submission meets all the requirements in the rubric.

    For each assignment, we suggest submitting two files:

    1. Your code file – contains all your work.
    2. Your answers file walks graders through what you did and what you found. For each coding question, include:
      • Methodology functions used, models implemented, and how the model was evaluated.
      • Results equations, graphs, tables, and performance metrics
      • Discussion of Results discuss what your results mean for this dataset. Mention anything surprising, possible reasons for weak performance, ways to improve the model, other analyses worth exploring, and any ethical or legal considerations

    Requirements: Complete

  • analysis of algorithms

    Please help me review.

    Requirements: long ernough

  • Week 7 – A More Realistic Event *Provide Template*

    Hi there!

    I’m your Instructor for ESP 201, not really a venture capitalist investor. As a student of this class, you’ve now spent an entire block learning and evaluating the different ways Esports events can happen and the different organizational decisions that go into events.

    With the following restrictions, I want you to envision an event for your chosen Esport:

    1. $1000 budget
    2. A team of only 3 people, who do you want to assist you? Describe their roles and what you expect them to accomplish.
    3. 2 months of pre-production

    In a 5-page document, describe what you’re hoping to accomplish with these resources. What is your event?

    On page 1, provide an introduction to your event and what you will be doing. Then please also provide the location, modality, games to be played, and your intended audience.

    On page 2, please provide an overview of the team you’re assembling to handle the operation of this event. Please ensure you assign people tasks in both pre-production, day of the event roles, and also post-production follow-up.

    On page 3, please provide a rationale for how you intend to spend your budget and where you intend to spend your budget.

    On page 4, go over the rules of play for the event that you’ll be hosting and give a description for how your event potentially plays into the larger ecosystem for your chosen title(s). For example, does this event potentially give standings or ranking to individual players?

    On page 5, please provide a timeline of both pre-production, the day of event, and then any communication you intend to send out prior to the event and then communication that will occur after the event.

    I look forward to learning about how creative you can be with these resources!

    Requirements: p5

  • Search Exercise

    Read the instructions to complete this assignment.

    It should be in APA format.

    I have attached an example (see instructions for details) and one of the sources you can use here. I have more sources for you to use that I can give to you shortly.

    Requirements: 8 pages or more (not including title page and References)

  • Four IT discussions

    Requirements: 12 hours

  • Help on cyber security Homework

    link to cyber secuirty homework =

    Requirements: as long as it has to be

  • Computer Science Question

    This exam tests your ability to perform real-world tasks using the Linux operating system. It is a performance-based exam that tests what you can do, not just what you have memorized. The exam covers content that is taught in the TestOut Linux Pro course. Students should have completed this course (or its equivalent) before attempting this exam.

    You will be presented with a series of performance-based questions. Each question presents a scenario and a set of tasks. You can make one attempt to complete each question, and you cannot return to previous questions or review your answers. Complete each lab as follows:

    Click Launch Lab to start the lab.

    Complete the required tasks.

    When you are finished with all tasks, click Score Lab to advance to the next question.

    You are scored based on the number of lab tasks you complete. Each task is scored individually, so complete as many as you can.

    The default time limit for this exam is 2 hours.

    Manage your time to ensure you can attempt every task and question.

    Important:

    The exam may be attempted only once per exam voucher. If you do not pass the exam, you may purchase a retake exam voucher online.

    Do not click Start Exam until you are ready to complete the certification exam.

    This assessment has a 2-hour time limit.

    Requirements: 2p