581260 Software engineering Lab

Principal theme Prerequisite knowledge Approaches the learning objectives Reaches the learning objectives Deepens the learning objectives
Software requirements, design, implementation, and validation • Basics of software design
(Software modelling)
• The work phases and methods of the requirement specification process
• Requirements and use cases V
• Prototypes
• Basics of testing
• Inspections
(The five above: Software engineering)
• Can produce the requirements and use cases the client wants for the software being produced.
• Can make a user interface prototype at the requirement specification stag.
• Can create and specify such a software design based on the requirement specification that the software can be implemented based on the design.
• Can make a testing plan for the software.
• Can model and specify the requirements of mid-range software and their architecture.
• Actively participate in inspection sessions in accordance with their role, while understanding their significance and work routines.
• Can utilise the libraries and special features of the programming language chosen for the job in design, implementation and testing. 
• Can create the test cases in accordance with the testing plan, to verify and validate the implementation of the software specifications. 
• Can describe the requirements unambiguously with some suitable formal description method.
• Can use suitable design models for the software.
• Can use the glass box testing methods to complement testing. Approach as near 100% of the branch coverage in glass box testing as possible.
Software tools and work environments • The basic tasks in software process models (Software engineering) • Can validly select the software tools suitable for each stage of a software engineering project. • Can use the selected software tools.
• Make their own and others' work more efficient through learning advanced use of the tools.
• Can analyse and select the tools that are the most apprpriate for the project out of a group of tools.
Software project management • The basic tasks of software process models.
• Planning the schedule of a software engineering project.
• The basics of assessing software and evaluating the results.
(All the above: Software engineering)
• Can keep a log of working hours and log the hours into the measuring system regularly.
• Can take responsibility for the management of a special area as agreed upon at the beginning of the project, such as project management or being in charge of code-writing.
• Can document their work and results with enough detail to use the document as an aid in maintenance.
• Participate in drawing up the project plan. The plan will include at least extent and work assessments of the project, the schedule, available resources, and risk management.
• Can select suitable metrics for each stage of the software engineering project.
• Participate actively in the team's work, supporting both the team and its members in all things related to the project.
• Make sure that the measurements for the whole project are stored in the measurement system.
• Can assess the extent and costs of a project with the help of several different assessment methods.
• Can evaluate the maturity level of a process used in a project, and can present suggestions for improving the process.


26.09.2011 - 14:18 Marina Kurtén
31.08.2011 - 10:34 Matti Luukkainen