Software Systems Development

Basic Information

Offered by: Institute of Informatics and Software Engineering
Type of Study: Undegraduate in Informatics
Specialization track: Software Engineering
Duration: 12 weeks
Semester: Spring
Hours per week (lectures - labs): 2 - 1
Credits: 3
Reader: Mária Bieliková
Prerequisites:
programming in arbitrary programming language;
experiences with a big software system development would be helpful

to Homepage to Teaching to the Top

Objective

The field of software engineering deals with problems that arise when programs are large, when they involve many programmers and when they exist over long period of time. The purpose of this course is to introduce the student basic principles of software engineering. Emphasis is on structured analysis and design methods. Practical work is centered around these methods. CASE tool is used. This course has been designed so that, upon its completion, the serious student will have received the initial level of preparation necessary to be a successful and effective software engineer.

Keywords: software system, module, software development life cycle, stage of software development, CASE (Computer Aided Software Engineering).

to Homepage to Teaching to the Top

Contents

Background:
a brief history of software engineering; software system and software engineering definition; properties of software systems; problems with software development
software system life cycle:
description of stages (inputs, outputs)
Technics for software analysis and design:
use case diagrams, data flow diagrams, entity relationship diagrams, algorithm description techniques (structured text, decision tables, decision trees), entity life histories, state-transition diagrams, interactions diagrams
The qualities of a good design:
coupling, cohesion, design guidelines
Approaches to analysis and design:
Data-oriented approach; structured approach; object-oriented approach (Booch method)
Models of software development:
(just a brief introduction) waterfall model, rapid prototyping model, evolution model, exploratory model, transformation model, reuse model

to Homepage to Teaching to the Top

Laboratory Excercises

Labs are organized in three major segments:

  1. Business model
  2. Functional model (sets of use case diagrams) for the given information system requirements is developed
  3. Data model of the same problem is developed

Steps 1-3. are completed by means of the CASE tool. By now CASE tool Rational Rose is used.
Results are presented to all class members (form of poster).

Documentation is required in the following form:

  1. Problem specification
  2. Used techniques description
  3. Rules for entities identification
  4. Requirements specification
    • More detailed requirements description
    • Functional model
    • Data model
    • User interface requirements
  5. Conclusions

to Homepage to Teaching to the Top

Readings

Sommerville, I.
Software Engineering. Addison-Wesley Publ. Company, 6th Edition, 2001.
Ghezzi, C., Jazayeri, M., Mandrioli, D.
Fundamentals of Software Engineering. Prentice Hall, 2th Edition, 2003.
Steinberg, D.H., Palmer, D.W.
Extreme Software Engineering: A Hands-On Approach. Prentice Hall. 2004.
Brooks, F.P.
The Mythical Man-Month. Anniversary Edition.Addison-Wesley. 1995.
Jalote, P.
An Integrated approach to Software engineering. Springer Verlag. 1997.
Yourdon, E.
Modern Structured Analysis. Prentice-Hall. 1989.
Pressman, R.S.
Software Engineering: A Practicioner's approach. 5th Edition. McGraw Hill. 2000.
Pfleeger, S.L.
Software Engineering: Theory and Practice. Prentice Hall. 1998.
Van Vliet, H.
Software Engineering: Principles and Practice. John Wiley. 2nd Edition. 2000.

to Homepage to Teaching to the Top

Conditions to obtain a grade

  1. "pass" mark for labs which requires:
    • active participation in labs
    • elaboration of projects documentation with defined structure (the last date is lab in last week of the semester)
      functional and data model in a CASE tool
      prototype with proper functionality demonstration
  2. at least 56% of marks
    • Assignments for labs will constitute 40% of the final grade.
    • Midterm test will constitute 60% of the final grade.

to Homepage to Teaching to the Top

Home
Research
Projects
Publications
Books
SCM
Teaching
Links
Last updated:
Mária Bieliková bielik [zavináč] fiit-dot-stuba-dot-sk
Design © 2oo1 KoXo