Systems Analysis and Design
Module ID
Y205
Semester
2
Hours/Week - ECTS
5 – 6
Gerogiannis Vassilis
Professor
Learning Outcomes
Upon successful completion of the course students will be able to:
- define the concept of a model and its use to represent the processes and life cycle of a software,
- design models of several types and levels: conceptual and software specification models and less software implementation models,
- recognize various kinds of formal methods for gathering and describing requirements and specifications of a system,
- understand differences between functional and non-functional requirements, user requirements and system requirements,
- apply structured and object-oriented methodologies for the analysis and design of software systems/applications, drawing corresponding diagrammatic models,
- recognize the characteristics of a “good design” of software,
- develop the high-level architecture of a system,
- understand the difference between conceptual, logical, and physical design of a database,
- describe conceptually and logically the model of a relational database,
- use UML diagrams as a tool to describe the specifications, but also the development of the design of a software system.
Indicative Module Content
- Introduction to Software and Software Engineering
- Software Life-Cycle and Software Life-Cycle Models
- Functional Requirements and Non-functional Requirements
- Structured Systems Analysis and Design Method
- Data Flow Diagrams
- Data Dictionary
- Entity-Relationship Diagrams
- State Transition Diagrams
- Structure Charts
- Pseudocode
- Software Design and Software Architecture Design
- Introduction to Object-Oriented Analysis and Design Method
- Unified Modeling Language (UML) – Use Case Diagrams, Class Diagrams, Activity Diagrams