Institute of Science and Technology
Bachelor of Science in Computer Science and Information Technology
Course Title: System Analysis and Design
Course no: CSC315
Nature of course: Theory + Lab
Full Marks: 60 + 20 + 20
Pass Marks: 24 + 8 + 8
Credit Hours: 3
Course Description : This course covers the basic concepts of computers and information technology including introduction, hardware, software, memory, input/output, data representation, database, networks and data communication, Internet, multimedia, and computer security.
Course Objective : This course introduces basic elements of the design and analysis of computer algorithms. Topics include asymptotic notations and analysis, divide and conquer strategy, greedy methods, dynamic programming, basic graph algorithms, NP-completeness, and approximation algorithms. For each topic, beside in-depth coverage, one or more representative problems and their algorithms shall be discussed.
1.1.The Systems Development Environment: Introduction; A Modern Approach to Systems Analysis and Design; Developing Information Systems and the Systems Development Life Cycle; The Heart of the Systems Development Process and Traditional Waterfall SDLC; CASE Tools
1.2.Other Approaches: Prototyping; Spiral; Rapid Application Development; Introduction to Agile Development
1.3.Managing the Information Systems Project: Introduction; Managing the Information Systems Project; Representing and Scheduling Project Plans; Using Project Management Software
2.1. Identifying and Selecting Systems Development Projects: Introduction; Identifying and Selecting Systems Development Projects; Corporate and Information Systems Planning
2.2. Initiating and Planning Systems Development Projects: Introduction; Initiating and Planning Systems Development Projects; Process of Initiating and Planning IS Development Projects, Assessing Project Feasibility; Building and Reviewing the Baseline Project Plan
3.1. Determining System Requirements: Introduction; Performing Requirements Determination; Traditional Methods for Determining Requirements; Contemporary Methods for Determining System Requirements; Radical Methods for Determining System Requirements
3.2. Structuring System Process Requirements: Introduction; Process Modeling; Data Flow Diagrams; Modeling Logic with Decision Tables, Decision Trees, and Pseudocodes
3.3.Structuring System Data Requirements: Introduction; Conceptual Data Modeling; Gathering Information for Conceptual Data Modeling; Introduction to E-R Modeling
4.1.Designing Databases: Introduction; Database Design; Relational Database Model; Normalization; Transforming E-R Diagrams Into Relations; Merging Relations; Physical File and Database Design; Designing Fields; Designing Physical Tables
4.2. Designing Forms and Reports: Introduction; Designing Forms and Reports; Formatting Forms and Reports; Assessing Usability
4.3.Designing Interfaces and Dialogues: Introduction; Designing Interfaces and Dialogues; Interaction Methods and Devices; Designing Interfaces; Designing Dialogues; Designing Interfaces and Dialogues in Graphical Environments
5.1.System Implementation: Introduction, System Implementation, Software Application Testing, Installation, Documenting the System, Training and Supporting Users, Organizational Issues in Systems Implementation
5.2.Maintaining Information Systems: Introduction, Maintaining Information Systems, Conducting Systems Maintenance
Basic Characteristics of Object-Oriented Systems; Object-Oriented System Analysis and Design (OOSAD); Introduction to Unified Modeling Language, Structural and Behavioral Diagrams
This course can be learnt in effective way only if we give focus is given in practical aspects of algorithms and techniques discussed in class. Therefore student should be able to implement the algorithms and analyze their behavior.
For the laboratory work, students should implement the following algorithms in C/ C++ and perform their analysis for time and space complexity.