Singapore University of Social Sciences

Application Analysis and Design

CET Course | SkillsFuture Claimable Course

Application Analysis and Design (ICT340)

Synopsis

ICT340 Application Analysis and Design provides students with the foundations for the analysis and design of application systems using the object-oriented paradigm. It introduces the key concepts necessary for subsequent practical object-oriented analysis and design in the real world that begins with a structural model and then proceeds with dynamic modeling. At the end of the course, students would be able to develop object oriented analysis design and implement the design in modeling and programming languages. Students use Python as the implementation language and UML as the modeling language. A case study will allow students to demonstrate what they learned in mainstream software application systems.

Level: 3
Credit Units: 5
Presentation Pattern: Every semester

Topics

  • User requirements gathering via user stories and interview
  • Translation of user requirements to categories of objects
  • Structural Object Oriented Modelling
  • Dynamic Object Oriented Modeling
  • UML Class, Object, Use Case and Sequence diagrams with code samples
  • Design principles 1: abstraction, encapsulation, generalisation, decomposition, coupling, and cohesion
  • Design principles 2: separation of concerns, information hiding and conceptual integri
  • Design patterns: common structural, behavioural and creational patterns.
  • UML modeling and code samples for design principles and patterns
  • Object Relational Modeling (ORM) and persistent store
  • SQL Query through persistent store
  • Case study of application analysis and design

Learning Outcome

  • Analyse user requirements for non-ambiguity, correctness, completeness and consistency for system design
  • Develop the structural and dynamic models based on system design
  • Appraise the associations among a set of classes as part of a structural processing
  • Demonstrate the application of design patterns in system design
  • Formulate report to document design analysis well
  • Construct components of a system with a modelling language
  • Implement structural and dynamic model in Python
Back to top
Back to top