Subject: Project (1)	Code: MV043	

Semester	 Hours: C+S+L	Type	 Section	
1	0+0+1	compulsory	Formals Methods in Programming - in English	

Teaching Staff in Charge	Prof. FRENTIU Militon, Ph.D., mfrentiu@cs.ubbcluj.ro	
Aims	At the completion of this project, the students will:
a) be able to use formal methods for software system specification;
b) be able to perform all the roles involved in using formal methods in software development;	
Content	1. Project management issues
1.1. Start of the project. 
1.2. Problem statement.
1.3. Initial project plan
2. Requirements specification and technology selection.
2.1. Requirements gathering
2.2. Requirements specification
2.3. Development tool selection
3. Domain application modeling.
3.1. Business objects
3.2. Business processes
3.3. Use cases
4. Architectural design. 
4.1. Architecture style and tiers
4.2. Persistence tier
4.3. Processing tier
4.4. Presentation and user interaction tier
5. Components design and implementation.
5.1. Domain-specific components
5.2. Data access components
5.3. Administrative components
5.4. Helper components
5.5. User interface components
5.6. Components for capturing user interaction 
7. Verification and validation issues.
7.1. Specification, design, code and testing document verification;
7.2. Functionality testing
7.2. Stress testing
7.3. Recovery testing
8. Application Documentation	
Selective References	1. Enterprise JavaBeans 3 Specification, Sun Microsystems, http://java.sun.com/products /ejb/docs.html
2. Java Enterprise Edition, Sun Microsystems., 1999. http://java.sun.com/javaee/index.jsp
3. Matena, V et al., Applying Enterprise JavaBeans 2.1: Component-Based Development for the J2EE Platform, Addison-Wesley, The Java Series, 2003.
4. Ed Roman et al., Mastering Enterprise JavaBeans 3rd ed., Wiley, 2005. (free pdf version available at http://www.theserverside.com/tt/books/wiley/masteringEJB/)
5. Enterprise Solution Patterns using Microsoft .NET, Microsoft Patterns and Practices Home, http://msdn.microsoft.com/practices/.
6. Application Architecture  for ,NET. Designing Applications and Services, Microsoft Patterns and Practices Home, http://msdn.microsoft.com/practices/	
Assessment	The assessment method is practical exam. The last two weeks of the term are dedicated to live demos of developed applications. The final mark (on a ten points scale, one point by default) will be obtained as:
a) Lab attendance: 1 pt
b) Functionality: 2 pts.
c) Presentation 2 pts.
d) Documentation 2 pts.
e) Degree of generality 2 pts