Introduction to Software EngineeringLaajuus (3 ECTS)
Course unit code: TI00AA53
General information
- Credits
- 3 ECTS
Objective
After passing the course student understands the phases of development process of large software applications: requirements specification, design, implementation, testing and maintaining.
Skills of using some CASE tool to produce UML diagrams, like ASTAH or Rational Rose.
Content
Introduction to software engineering and software project management contains software evolution, software attributes, phases of software production, requirements specifications. Unified Modelling Language (UML) is used to model use cases, class diagrams, sequence diagram, and statechart diagram. Software testing, software quality issues are discussed as well.
Quality assurance methods (CCM and SPICE), project management practices using COCOMO model.
Qualifications
Basic skills of programming
Assessment criteria, satisfactory (1)
Software Applications:
-student understands human and business impacts based on software applications and products
Software Development Process and Project Management
- student can explain the process models, and the differences between process and project
- student can explain the fundamental tasks in software process models
Software Quality Standards
- student can explain the roles of parties in the verification and review operations
Software Life Cycle
- student identifies the life cycle of software and can explain the factors affecting on it
Assessment criteria, good (3)
Software Applications:
- student can explain the various tasks and methods of requirements specification
Software Development Pocess and Project Management
- student can explain the differences between various process models,
- student can use the tools of project management in planning phase
- student knows the software metrics and basics of sofware evaluation process
Software Quality Standards
- student knows the basics of the software process standards like CMM/CMMI, SPICE
Software Life Cycle
- student can explain various tasks of the software maintenance phase
Assessment criteria, excellent (5)
Software Applications:
- student understands the importance of tracking and can chose appropriate methods
Software Development Process and Project Management
- student knows and can apply agile methods in his own role
- student can use the project management tools in planning phase
Software Quality Standards
- student can assess the maturity level of software development process
Software Life Cycle
- student an explain how various techniques and methods affect on the maintainability of software
- student can explain how software industry is different from the traditional engineering industry