Skip to content

All assignments and the final project are completed in class CSCI 5308 (Advanced Software Development Concepts) of MACS at Dalhousie University. CSCI 5308 ASDC Dalhousie University.

License

Notifications You must be signed in to change notification settings

DhrumilShah98/Dalhousie_University_CSCI5308_ASDC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dalhousie University | CSCI 5308 | ASDC (Advanced Software Development Concepts)

All assignments and the final project are completed in class CSCI 5308 (Advanced Software Development Concepts) of MACS at Dalhousie University. CSCI 5308 ASDC Dalhousie University.
Final Letter Grade Received: A+

Authors

Assignments

Assignment 1

  • Learning Objectives:
    • Practice developing effective unit tests.
    • Practice implementing unit tests with JUnit.
    • Practice working with TDD.
  • Assignment 1 GitHub: Assignment 1
  • Letter Grade Received: A+

Assignment 2

  • Learning Objectives:
    • Practice procedural refactoring.
    • Practice implementing good/quality code.
    • Practice SOLID principles.
  • Assignment 2 GitHub: Assignment 2
  • Letter Grade Received: A+

Assignment 3

  • Learning Objectives:
    • Describe the use of SOLID principles in your project.
    • Describe the use of layers in your project.
    • Describe the opportunities for refactoring and improvements in your project using design patterns.
  • Assignment 3 GitHub: Assignment 3
  • Letter Grade Received: A+

Final Group Project

  • Project Name: Blood Book
  • Project Description: Blood Book is a Blood Bank Management System designed to manage information related to administrative and inventory management with blood banks and to connect blood donors and receivers.
  • Inception Year: 2021
  • Team Name: Group 13
  • Team Members:
  • Learning Objectives:
    • Understood professional programming in an environment where quality is paramount.
    • Understood the importance of integrating quality assurance into programming practices.
    • Applied Agile methodology to develop this project.
    • Used appropriate tools to automate builds, deployment and configuration.
    • Understood GitFlow.
    • Analyze and applied test driven development to the software project.
    • Implemented the S.O.L.I.D. principles of object-oriented design (Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion).
    • Understood and implemented the principles of cohesion and coupling and avoid their misuse.
    • Understood how to write clean, readable code.
    • Applied design patterns and analyzed the benefits of using existing code / APIs.
    • Recognized code smells and refactored the code to avoid them.
    • Understood the importance of establishing boundaries in the systems (i.e. data, business logic, display logic)
    • Understood the importance of the consistent application of naming conventions.
    • Understood the concept of technical debt and the long-term costs of bad code.
    • Analyzed and improved the existing code through refactoring.
    • Identified and addressed the fragility and inflexibility in code.
  • Final Group Project GitHub: Final Group Project
  • Letter Grade Received: A+
    • Letter Grade Received in Project Proposal: A
    • Letter Grade Received in Project Demonstration Video: A+
    • Letter Grade Received in Project Code Assessment: A+

Releases

No releases published

Packages

No packages published

Languages