Software Engineering Basics Outline
|
Analysis and Design for Software
Systems |
Department of Computer Science
and I.T. |
Spring 2020 Morning |
A. Course Description
Course
Code |
CS-222 |
|||||||||||||||||
Course
Title |
Analysis and Design for
Software Systems |
|||||||||||||||||
Credit
Hours |
3 |
|||||||||||||||||
Prerequisites
by Course(s) and Topics |
CS-121 Object Oriented
Programming |
|||||||||||||||||
Follow
Up |
CS-322 Software
Construction CS-324 Web Application
Development |
|||||||||||||||||
Assessment
Instruments with Weights (Homework, quizzes,
midterm, final, programming assignments, lab work, etc.) |
|
|||||||||||||||||
Course
coordinator |
|
|||||||||||||||||
URL
(if any) |
|
|||||||||||||||||
Current
Catalog Description |
||||||||||||||||||
Textbook
(or Laboratory Manual for Laboratory
Courses) |
A.
P.K.J. Mohapatra, Software
Engineering: A Lifecycle Approach, New Age International (P) Ltd. Publishers,
2010 B.
Modern Systems Analysis and
Design jeffrey a. hoffer, Joey F.
George, Joseph S. Valacich, Pearson Sixth Edition C.
Roger S. Pressman Software Engineering- A practitioner’s
approach” 8th Ed. D.
C.Larman, Applying UML &
Patterns: An introduction to Object Oriented Analysis & Design &
Unified Process. |
|||||||||||||||||
Reference Material |
A.
Ian Sommerville “Software Engineering”, 6th
Ed. B.
An integrated approach to software
engineering by Pankaj Jalote C.
Fundamentals of Software Engineering By
Carlo Ghezzi D.
http://www.mhhe.com E.
http://www.sei-cmu.edu |
|||||||||||||||||
Course
Goals |
• Application
of software engineering elements to the development of software in any
computing application domain where professionalism, quality, schedule, and
cost are important in producing a software system. • To
convey the importance and need of software engineering • To
discuss different software development models appropriate for the development
and maintenance of software products • To
introduce the basic project management concepts for the development of a
high-quality product • To
impart comprehensive knowledge regarding software development lifecycle • To
demonstrate, with justification, an appropriate set of tools to support the
development of a range of software projects |
|||||||||||||||||
Course
Contents |
Software Development Process: Software Life
cycle Models:Problem analysis using a case study: Requirements Gathering and
Definition: Modelling, Description of
Requirements: Introduction to Structured Analysis;Documentation of Structured
Analysis:Data Flow Diagrams (DFD);
Creating DFDs and Data Dictionary. Entity Relationship diagram (ERD), Requirements
Specification. Verification of Requirements. Structured Design: Creating
Structure Chart. Design Review: Formal Technical Reviews and Design Inspections.
Documentation of structured design. OO Basics; Introduction to Object Oriented
Analysis and Design; OO Analysis UML way.UML Diagrams for OO Analysis: Case
Study of OO Analysis using UML: OO Design.Documentation of OO Design. |
|||||||||||||||||
Topics Covered in the Course, with Number of
Lecturer on Each Topic (assume 16-week instructions and five lecture per
week. |
|||
Week No. |
Class Topic |
Source + Help Session (Book-Chapter No., Section
No., Page No.) |
Recommendations |
Introduction |
|||
1 |
HISTORY OF SOFTWARE
ENGINEERING Development of Tools and
Techniques of Software Engineering |
A. 1.1, 1.1.2 |
|
SOFTWARE CRISIS EVOLUTION OF A
PROGRAMMING SYSTEM PRODUCT CHARACTERISTICS OF
SOFTWARE |
A. 1.2, 1.3, 1.4 |
|
|
Failure curvefor hardware Failure curvesfor
software THE NATURE OF SOFTWARE |
C. Figure1.1, 1.2 C. 1.1 |
|
|
DEFINITIONS Software Engineering |
A. 1.5 C. 1.3 |
|
|
Software Myths |
C. 1.6 |
|
|
Software Development Process (SDLC) |
|||
2 |
System Development Environment Modern Approach to System Analysis and Design |
B. Chapter 01 |
|
Developing Information System and System Development life cycle The Heart of System Development Process |
B. Chapter 01 |
|
|
Different Approaches to improving development |
B. Chapter 01 |
|
|
The Origins of software Sources of Software Choosing off the shelf software, validating, reuse |
B. Chapter 01 |
|
|
THE CODE-AND-FIX MODEL |
A. 2.2 |
|
|
3 |
THE WATERFALL MODEL |
A. 2.3 |
|
THE EVOLUTIONARY MODEL THE INCREMENTAL
IMPLEMENTATION (BOEHM 1981, GILB 1988) |
A. 2.4, 2.5 |
|
|
PROTOTYPING |
A. 2.6 |
|
|
THE SPIRAL MODEL |
A. 2.7 , 2.8 |
|
|
PHASEWISE DISTRIBUTION OF
EFFORTS CHOOSING AN APPLICATION
DEVELOPMENT STRATEGY |
A. 2.11, 2.13 |
|
|
Requirments |
|||
4 |
IMPORTANCE OF
REQUIREMENTS ANALYSIS USER NEEDS, SOFTWARE
FEATURES, AND SOFTWARE REQUIREMENTS |
A. 3.1, 3.2 |
|
CLASSES OF USER
REQUIREMENTS SUB-PHASES OF
REQUIREMENTS PHASE BARRIERS TO ELICITING
USER REQUIREMENTS |
A. 3.3, 3.4, 3.5 |
|
|
STRATEGIES FOR DETERMINING
INFORMATION REQUIREMENTS |
A. 3.6 |
|
|
THE REQUIREMENTS
GATHERING SUB-PHASE |
A. 3.7 |
|
|
Quiz 1 |
|
|
|
5 |
Requirment Engineering |
c.
8.1 |
|
Establishing the ground work |
C. 8.2 |
|
|
DOCUMENT FLOW CHART |
A. 4.1 |
|
|
Modeling Logic with decision Tables |
B.
Chapter 07 (Page 221) |
|
|
Designing |
|||
6 |
DECISION TREES |
A.
4.3 |
|
Introduction to structured Analysis: Data
Flow Diagrams (DFD) Definition and symbols with an example |
A. 5.1 |
|
|
Data Flow Diagramming Rules, Decomposition of DFDs Balancing DFDs with example [Electronic Commerece Application: Process Modeling for Pine Valley Furnituure’s webstore] |
B. Chapter
07 (Page 207,224) |
|
|
DATA DICTIONARY example |
A. 5.2 |
|
|
Introduction to Structured English |
A.
5.3 |
|
|
7 |
Introduction to E-R Modeling, Entity, Entity Types, Attributes, |
B. Chapter 08 |
|
PROPERTIES OF AN SRS |
A. 10.1 |
|
|
CONTENTS OF AN SRS |
A.
10.2 |
|
|
WHAT AN SRS SHOULD NOT
INCLUDE STRUCTURE OF AN SRS |
A. 10.3, 10.4 |
|
|
STRUCTURE OF AN SRS |
A.
10.4 |
|
|
8 |
VALIDATION OF
REQUIREMENTS DOCUMENT |
A.
10.5 |
|
STRUCTURE CHART |
A. 13.1 |
|
|
COUPLING, COHESION |
A.
13.2, 13.3 |
|
|
THE MODULAR STRUCTURE |
A.
13.4 |
|
|
REVIEWS: A FORMALITY
SPECTRUM Technical reviews should
be applied with a level of formality Reviewing the Design , Inspection |
C.
15.4 B.
Chapter 05 (Page 140) internet source |
|
|
MID-TERM
EXAMINATION |
9 |
Documentation
of Structured Design: |
Handouts |
Web Source* |
Design Concepts: Abstraction, Architecture, Patterns, Separation
of Concerns, Modularity, Information Hiding. |
C.
12.3 |
|
|
10 |
Design
Concepts: Functional Dependence, Refinement, Aspects, Refactoring, Object Oriented Concepts, Design Class |
C. 12.3 |
|
Architectural
Design: What is architecture, Architecture Description Architectural
Styles |
C. 13.1 |
|
|
Object
Oriented Analysis and Design |
|||
11 |
Brief
Taxonomy of Architectural Styles: Data Centered Design, Data Flow
Architecture, Call & Return Architecture, Object oriented Architecture,
Layered Architecture |
C. 13.3 |
|
Introduction
of the course Object
Oriented Concepts Object Oriented Analysis & Design Basics |
D. 1.1, 1.2, 1.3, 1.4, 1.5 |
|
|
12 |
Use
Case Modeling Types
of Actors, Types of Use cases, Use case Diagram, Fully Dressed Use case |
D. 6.2, 6.3,6.4,6.5, 6.6, 6.7 |
|
|
Domain
Model: What is domain Model, Visual Dictionary, DM vs. Software Class,
Traditional Meaning of DM, Conceptual; Classes, Data Model VS DM, Motivation,
Guideline for DM, How to find conceptual Classes, Is Domain Model Correct Case
Study |
D. 9.2, 9.3, 9.4, 9.5,9.18 |
|
13 |
System Sequence Diagrams What is SSD, Motivation, Relationship Between SSD & UC, How
to name system events & Operations, SSD Information in Glossary Case Study |
D. 10.2,10.3, 10.5, 10.6, 10.8 |
|
Class
Diagram Design
Class Diagram, Classifier, Note Symbols, Operation & Methods, Keywords Case
Study |
D. 16.2, 16.3, 16.5, 16.6, 16.7, 16.16 |
|
|
14 |
Class
Diagram Association
Class, Singleton Class, User Defined COmpart5ment, Active Class, Relationship
Between Interaction & Class Diagram Case
Study |
D. 16.17, 16.19, 16.20,16.21 |
|
Sequence
Diagram Case
Study |
D. 15.1, 15.3, 15.4 |
|
Comments
Post a Comment