Subject: Software Design
(06 -
RI45) Basic Information
Course specification
Course is active from 01.10.2005.. Precondition courses
Course which have preconditioned courses Software Design
Students learn about efficient and effective software design. They acquire knowledge and skills for architecture design, implementation and testing of complex software systems. Standardization of implementation, testing, verification and validation of software. Using tools for tracking software faults. Documentation for complex software products. Software characteristics presentation. A the end of the course the students are able to design complex software systems based on standardized processes of implementation, testing, verification and validation of software and use of available tools for tracking software configuration and software faults. In addition they are also capable of making high quality documentation and presentations related to characteristics of complex software products. Model based software construction. Aspects of software system design: conceptual and technical design, decomposition and modularity, software architecture, styles and strategies. Aspects of software system construction: organization and structure of software, elements of program solution, construction standards and functionality implementation. User interface design. Software construction procedure: methods and techniques of construction, team work and team software development, X-treem programming, code standard and quality, software testing, software inspection, software integration, verification and validation. Fundamentals of software quality control. Fundamentals of fault tracking and software configuration. On the basis of specification of event controlled system, developed within the course: Software Specification and Modeling, and working in teams, students work on practical implementation of the knowledge about software construction. Relying on two software inspections during the lectures, students learn about methods and techniques of presenting software solutions, their testing, verification and validation. At the end of the course the students give a class presentation and defense of their project.
|