Tiedote kevään uusista opintojaksoista
Tietojenkäsittelytieteiden laitos järjestää tänä keväänä kaksi uutta kurssia, joita ei ole mainittu opinto-oppaassa. Nämä ovat Tietokannat ja tiedon louhinta ja Software product line engineering and management. Edellisestä opintojaksosta kuvaus, ajat ja paikat ovatkin jo Korpissa (https://korppi.jyu.fi/kotka/course/student/generalCourseInfo.jsp?specialSta tusID=0 https://korppi.jyu.fi/kotka/course/student/generalCourseInfo.jsp?specialSta tusID=0&course=65245 &course=65245 ), jälkimmäisestä opintojaksosta tiedot ovat tulossa sinne lähipäivinä. Niitä odotellessa voitte tutustua kurssiin alla olevan kuvauksen avulla. Molemmat kurssit täydentävät erinomaisella tavalla laitoksen opetustarjontaa erityisesti järjestelmän kehittämisen alueelta. Käyttäkää hyödyksenne.
t. Mauri Leppänen
Software product line engineering and management
Software has become the key asset for competitive products in practically all industries. Thus, competitiveness in software development has become a concern for companies. There are two primary strategies to deal with this concern: increasing the competitiveness internally through methods such as large-scale reuse of existing software assets or externally by outsourcing software development activities to third party vendors. Additionally, companies may choose to enact both strategies in parallel.
Software product line engineering is an industrially validated methodology for developing software products and software-intensive systems faster, at lower costs, and with better quality and higher end-user satisfaction. It enables strategic use of requirements, features, pieces of software code, test cases, and numerous other software assets across the products in a software product line. It also facilitates the design of human-computer interfaces and highly usable software products and helps make the products within a product line look and feel similar. As a result, it has gained increasing global attention during this decade. It has been leveraged widely in business-to-business settings (e.g., designing and selling product suites that enable entire enterprise architectures) and business-to-consumer settings (e.g., office products, platforms for cellular phones).
Software product line engineering differs from single-system engineering in two primary ways:
1. It requires two distinct development processes: domain engineering and application engineering. Domain engineering defines and realizes the commonality and variability of a software product line, thus establishing a common software platform for developing high-quality applications rapidly within the line. Application engineering derives specific applications by strategically reusing the platform and by exploiting the variability built into the platform. 2. It needs to explicitly define and manage variability. During domain engineering, variability is introduced into all domain artifacts such as requirements, architectural models, components, and test cases. It is exploited during application engineering in order to derive applications tailored to the needs of different customers.
Because multiple products that share similar features should be considered in software product line engineering, the complexity of software product line engineering is high compared to single software product engineering. This course enables the students understand the key concepts of software product line engineering, apply them in industrial settings, and conduct graduate and post-graduate level research in the area of software product line engineering.
The course will be conducted through lectures and seminars (app. 40 hours) and a final exam.
linkki-historia@lists.jkl.hacklab.fi